C11

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

Останню чернетку специфікації (доступна для безкоштовного звантаження) видано у квітні 2011 року під назвою N1570[5].

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

Визначення стандартного макроса __STDC_VERSION__ зі значенням 201112L дає вказівку, що є підтримка C11[6]. Деякі можливості C11 підтримуються GCC, починаючи з версії 4.6[7]. У Clang підтримка починається від версії 3.1[8], а IBM XL C підтримка з версії 12.1[9].

  1. ISO/IEC 9899:2011 — Information technology — Programming languages — C. Архів оригіналу за 27 грудня 2011. Процитовано 30 березня 2022.
  2. ISO/IEC JTC1/SC22/WG14 is the international standardization working group for the programming language C. Архів оригіналу за 12 лютого 2018. Процитовано 30 березня 2022.
  3. WG14 N1460 Subsetting the C Standard. Архів оригіналу за 31 березня 2022. Процитовано 30 березня 2022.
  4. Brad Kelechava (13 листопада 2018). The Current C Programming Language Standard – ISO/IEC 9899:2018 (C18). ANSI. Архів оригіналу за 11 квітня 2022. Процитовано 11 червня 2019.
  5. Архівована копія (PDF). Архів оригіналу (PDF) за 25 грудня 2021. Процитовано 30 березня 2022.{{cite web}}: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
  6. Defect report #411. www.open-std.org. Архів оригіналу за 18 січня 2019. Процитовано 28 січня 2016.
  7. GCC 4.6 Release Series — Changes, New Features, and Fixes - GNU Project - Free Software Foundation (FSF). gcc.gnu.org. Архів оригіналу за 4 листопада 2015. Процитовано 28 січня 2016.
  8. Clang 3.1 Release Notes. llvm.org. Архів оригіналу за 4 березня 2016. Процитовано 28 січня 2016.
  9. Support for ISO C11 added to IBM XL C/C++ compilers (англ.). www.ibm.com. 17 квітня 2014. Архів оригіналу за 8 березня 2021. Процитовано 28 січня 2016.

From Wikipedia, the free encyclopedia · View on Wikipedia

Developed by Nelliwinne