]]> ]]>

C

Русское название:
Дата создания:
1969
Повлиял на:
Парадигма:
Типизация:
Принятые расширения файлов:
.c .h
Диалекты:
Реализации и версии (свернуть все | развернуть все):
Язык программирования

Си (англ. C) — стандартизованный процедурный язык программирования, разработанный в начале 1970-х годов сотрудниками Bell Labs Кеном Томпсоном и Денисом Ритчи как развитие языка Би.

Си был создан для использования в операционной системе UNIX. С тех пор он был портирован на многие другие операционные системы и стал одним из самых используемых языков программирования.

Си ценят за его эффективность; он является самым популярным языком для создания системного программного обеспечения. Его также часто используют для создания прикладных программ. Несмотря на то, что Си не разрабатывался для новичков, он активно используется для обучения программированию.

В дальнейшем синтаксис языка Си стал основой для многих других языков.

Элементы синтаксиса:

Комментарий до конца строки нет
Комментарии, которые могут быть вложенными #if 0 ... #endif
Комментарии, которые не могут быть вложенными /* ... */
Регистрозависимость да
Регулярное выражение идентификатора переменной [_a-zA-Z][_a-zA-Z0-9]*
Присваивание значения переменной =
Объявление переменной type variable
Блок { ... }
Равенство ==
Неравенство !=
Сравнение < > <= >=, для строк strcmp
Определение функции returntype f(type1 p1, type2 p2, ...)
Вызов функции f(a, b, ...)
Вызов функции без параметров f()
Если - то if (condition) ...
Если - то - иначе if (condition) ... else ...
Цикл с предусловием while (condition) ...
Цикл с постусловием do ... while (!condition)
Цикл for - next для диапазона целых чисел с инкрементом на 1 for (int i = 1; i <= 10; i++) ...
Цикл for - next для диапазона целых чисел с декрементом на 1 for (int i = 10; i >= 1; i--) ...

Примеры:

Факториал:

Пример для версий GCC 3, GCC 4

Используется рекурсивное определение факториала.

#include <stdio.h>

unsigned long long factorial(unsigned long long n)
{
    if (n == 0) {
        return 1;
    } else {
        return n * factorial(n - 1);
    }
}

int main(void)
{
    int n;
    for (n = 0; n <= 16; n++) {
        printf("%i! = %lld\n", n, factorial(n));
    }

    return 0;
}

Факториал:

Пример для версий MinGW

Используется рекурсивное определение факториала.

#include <stdio.h>

unsigned long long factorial(unsigned long long n)
{
    if (n == 0) {
        return 1;
    } else {
        return n * factorial (n - 1);
    }
}

int main(void)
{
    int n;
    for (n = 0; n <= 16; n++) {
        printf("%i! = %I64u\n", n, factorial(n));
    }

    return 0;
}

В закладки: ]]> Пиктограмма del.icio.us Пиктограмма БобрДобр.ru Пиктограмма Memori.ru Пиктограмма МоёМесто.ru ]]>