C11

C11 или ISO/IEC 9899:2011 (неофициально C1X) — стандарт для языка Си (ISO/IEC 9899:2011[1]), который заменил существующий стандарт C99. Официально о выпуске стандарта было объявлено 19 декабря 2011 года[2]. Эта версия стандарта большей частью стандартизирует возможности, существующие в распространённых современных компиляторах. Из-за плохой совместимости текущих реализаций C99 со стандартом C11 включает в себя больше выборочных возможностей для упрощения совместимости со стандартом ядра языка[3][4]. Действовавший с 2018 года стандарт C17 фактически являлся уточнённым вариантом C11, исправлявший найденные в стандарте ошибки[5].

Последняя черновая спецификация (доступная для бесплатного скачивания) имеет название N1570 и была издана в апреле 2011 года[6].

Новый стандарт прошел заключительный пересмотр черновика 10 октября 2011 года и был официально ратифицирован ISO и опубликован в ISO / IEC 9899: 2011 8 декабря 2011 года без каких-либо замечаний.

Определение стандартного макроса __STDC_VERSION__ со значением 201112L дает указание, что присутствует поддержка C11[7]. Некоторые возможности C11 поддерживаются GCC начиная с версии 4.6[8]. В Clang поддержка начинается с версии 3.1[9], а в IBM XL C поддержка с версии 12.1[10].

  1. ISO/IEC 9899:2011 — Information technology — Programming languages — C. Дата обращения: 22 декабря 2011. Архивировано 27 декабря 2011 года.
  2. ISO/IEC JTC1/SC22/WG14 is the international standardization working group for the programming language C. Дата обращения: 22 сентября 2011. Архивировано 12 февраля 2018 года.
  3. Ошибка в сносках?: Неверный тег <ref>; для сносок N1250 не указан текст
  4. WG14 N1460 Subsetting the C Standard. Дата обращения: 22 сентября 2011. Архивировано 31 марта 2022 года.
  5. Brad Kelechava. The Current C Programming Language Standard – ISO/IEC 9899:2018 (C18). ANSI (13 ноября 2018). Дата обращения: 11 июня 2019. Архивировано 11 апреля 2022 года.
  6. Ошибка в сносках?: Неверный тег <ref>; для сносок N1570 не указан текст
  7. Defect report #411. www.open-std.org. Дата обращения: 28 января 2016. Архивировано 18 января 2019 года.
  8. GCC 4.6 Release Series — Changes, New Features, and Fixes - GNU Project - Free Software Foundation (FSF). gcc.gnu.org. Дата обращения: 28 января 2016. Архивировано 4 ноября 2015 года.
  9. Clang 3.1 Release Notes. llvm.org. Дата обращения: 28 января 2016. Архивировано 4 марта 2016 года.
  10. Support for ISO C11 added to IBM XL C/C++ compilers (англ.). www.ibm.com (17 апреля 2014). Дата обращения: 28 января 2016. Архивировано 8 марта 2021 года.

C11

Dodaje.pl - Ogłoszenia lokalne