ANSI C

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

ANSI C — стандарт языка C, опубликованный Американским национальным институтом стандартов (ANSI). Следование этому стандарту помогает создавать легко портируемые программы.

История[править | править вики-текст]

Первый стандарт языка C был опубликован американским институтом ANSI. Через некоторое время он был принят международной организацией по стандартизации ISO, продолжившей выпускать следующие версии стандарта, которые стали приниматься как стандарт и институтом ANSI. Несмотря на это стандарт до сих пор чаще называют ANSI C, а не ISO C.

C89[править | править вики-текст]

В 1983 году Американский национальный институт стандартов сформировал комитет X3J11 для создания спецификации стандарта C. В 1989 году, после длительного и напряжённого процесса, стандарт был завершён и утверждён как ANSI X3.159-1989 «Язык программирования C». Именно эту версию часто называют «ANSI C», или «C89» (чтобы отличить её от C99).

C90[править | править вики-текст]

В 1990 году, стандарт ANSI C (с небольшими изменениями) был принят Международной организацией по стандартизации (ISO) как ISO/IEC 9899:1990. Эту версию иногда называют C90. Однако, термины C89 и C90 относятся в сущности к одному языку.

C99[править | править вики-текст]

В марте 2000 года ANSI принял стандарт ISO/IEC 9899:1999. Этот стандарт обычно называют C99. Это и есть современный стандарт языка программирования C, однако его не поддерживает полностью ни один компилятор.

C11[править | править вики-текст]

C11 — новый стандарт языка, принятый в 2011 году как ISO/IEC 9899:2011. Существует черновой вариант[1]. Основным новшеством стандарта являются поддержка многопоточности.

Поддержка компиляторами[править | править вики-текст]

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

Ссылки[править | править вики-текст]

Примечания[править | править вики-текст]