
Си — компилируемый статически типизированный язык программирования общего назначения, разработанный в 1969—1973 годах сотрудником Bell Labs Деннисом Ритчи как развитие языка Би. Первоначально был разработан для реализации операционной системы UNIX, но впоследствии был перенесён на множество других платформ. Согласно дизайну языка, его конструкции близко сопоставляются типичным машинным инструкциям, благодаря чему он нашёл применение в проектах, для которых был свойственен язык ассемблера, в том числе как в операционных системах, так и в различном прикладном программном обеспечении для множества устройств — от суперкомпьютеров до встраиваемых систем. Язык программирования Си оказал существенное влияние на развитие индустрии программного обеспечения, а его синтаксис стал основой для таких языков программирования, как C++, C#, Java и Objective-C.
errno.h — заголовочный файл стандартной библиотеки языка программирования С, содержащий объявление макроса для идентификации ошибок через их код. POSIX-совместимые операционные системы, наподобие Unix и Linux, могут включать другие макросы для определения ошибок через собственные коды errno
. Значение errno
имеет смысл только тогда, когда системный вызов или функция возвращает признак ошибки.
ANSI C — стандарт языка C, опубликованный Американским национальным институтом стандартов (ANSI). Следование этому стандарту помогает создавать легко портируемые программы.
locale.h — заголовочный файл стандартной библиотеки языка программирования С, который используется для задач, связанных с локализацией.
assert.h — заголовочный файл стандартной библиотеки языка программирования С, в котором объявляется макрос препроцессора языка С assert
. Данный макрос реализует исключение, которое может использоваться для проверки сделанных программой вычислений.
Препроцессор C/C++ — программа, подготавливающая код программы на языке C/C++ к компиляции.
C99 — стандарт языка программирования Си. Определен в ISO/IEC 9899:1999, современная версия - ISO/IEC 9899:1999/Cor 3:2007 от 2007-11-15. Является развитием стандарта C90.
stdio.h заголовочный файл стандартной библиотеки языка Си, содержащий определения макросов, константы и объявления функций и типов, используемых для различных операций стандартного ввода и вывода. Функциональность унаследована от «портативного пакета ввода-вывода», написанного Майком Леском из Bell Labs в начале 1970-х. C++ ради совместимости также использует stdio.h
наряду со схожим по функциональности заголовочным файлом cstdio.
ctype.h — заголовочный файл стандартной библиотеки языка программирования С, содержащий объявления функций для классификации и преобразования отдельных символов.
inttypes.h является заголовочным файлом стандартной библиотеки Си и соответствующего API. Он был добавлен в версии 1999 года ISO-стандарта языка Си. Он включает в себя заголовочный файл stdint.h. В нём определён ряд макросов для использования с семействами функций printf
и scanf
и функции для работы с типом intmax_t
.
signal.h — заголовочный файл, определенный в стандартной библиотеке языка Си, для указания того, как программа обрабатывает сигналы во время её выполнения. Сигнал может быть как синхронным с помощью вызова raise
, так и асинхронным.
stdlib.h — заголовочный файл стандартной библиотеки языка Си, который содержит в себе функции, занимающиеся выделением памяти, контролем процесса выполнения программы, преобразованием типов и другие. Заголовок вполне совместим с C++ и известен в нём как cstdlib
. Название «stdlib» расшифровывается как «standard library».
stddef.h — заголовочный файл стандартной библиотеки языка программирования С, определяющий макросы NULL и offsetof, а также типы ptrdiff_t, wchar_t и size_t.
fenv.h — заголовочный файл стандартной библиотеки языка Си, содержащий объявление типов данных для работы с числами с плавающей запятой.
stdarg.h — заголовочный файл стандартной библиотеки языка программирования Си, предоставляющий средства для перебора аргументов функции, количество и типы которых заранее не известны.
stdint.h — заголовочный файл стандартной библиотеки языка Си, введённый стандартом C99. Заголовочный файл объявляет несколько целочисленных типов и макросов.
setjmp.h — заголовочный файл стандартной библиотеки языка Си, объявляющий макросы и тип данных для нелокальных переходов. В Си существует оператор goto, позволяющий переходить в любое место в пределах функции, однако переход между функциями с его помощью невозможен.
C11 или ISO/IEC 9899:2011 — стандарт для языка Си, который заменил существующий стандарт C99. Официально о выпуске стандарта было объявлено 19 декабря 2011 года. Эта версия стандарта большей частью стандартизирует возможности, существующие в распространённых современных компиляторах. Из-за плохой совместимости текущих реализаций C99 со стандартом C11 включает в себя больше выборочных возможностей для упрощения совместимости со стандартом ядра языка. Действующий с 2018 года стандарт C18 фактически является уточнённым вариантом C11, исправляющим найденные в стандарте ошибки.
Диграф — последовательность из двух или более символов, интерпретируемая компилятором как один или более символов. В отличие от триграфов, подстановка диграфов препроцессором выполняется после лексического анализа и только в том случае, если диграф является отдельной лексемой.
threads.h — заголовочный файл стандартной библиотеки языка программирования С, содержащий макросы, типы, константы и функции для работы с потоками. Данный заголовочный файл появился в стандарте C11.