Стандартная библиотека C


Стандартная библиотека C или libc — это стандартная библиотека для языка программирования C , как указано в стандарте ISO C. [1] Начиная с исходного стандарта ANSI C , он был разработан одновременно со спецификацией POSIX библиотеки C , которая является его надмножеством. [2] [3] Поскольку ANSI C был принят Международной организацией по стандартизации , [4] стандартная библиотека C также называется библиотекой ISO C.

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

Интерфейс прикладного программирования (API) стандартной библиотеки C объявлен в ряде заголовочных файлов . Каждый заголовочный файл содержит одно или несколько объявлений функций, определений типов данных и макросов.

После длительного периода стабильности три новых заголовочных файла ( iso646.h, wchar.h, и wctype.h) были добавлены вместе с Нормативным приложением 1 (NA1), дополнением к стандарту C, ратифицированному в 1995 году. Были добавлены еще шесть заголовочных файлов ( complex.h, fenv.h, inttypes.h, stdbool.h, stdint.hи tgmath.h) с C99 , редакцией стандарта C, опубликованной в 1999 г., и еще пять файлов ( stdalign.h, stdatomic.h, stdnoreturn.h, threads.hи uchar.h) с C11 в 2011 г. Всего теперь имеется 29 заголовочных файлов:

Три заголовочных файла ( complex.h, stdatomic.h, и threads.h) являются условными функциями, поддержка которых от реализации не требуется.

Стандарт POSIX добавил несколько нестандартных заголовков C для специфичных для Unix функций. Многие нашли свой путь к другим архитектурам. Примеры включают fcntl.hи unistd.h. Ряд других групп используют другие нестандартные заголовки — в библиотеке GNU C есть alloca.h, а в HP OpenVMS есть va_count()функция.


1999 ISO C.pdf