C17, formalmente ISO/IEC 9899:2018, [1] es un estándar abierto para el lenguaje de programación C, desarrollado en 2017 y publicado en julio de 2018. Reemplazó a C11 (norma ISO/IEC 9899:2011), [2] y fue reemplazado por C23 (ISO/IEC 9899:2024) desde octubre de 2024. [3] Dado que estaba en desarrollo en 2017 y se publicó oficialmente en 2018, a C17 a veces se le denomina C18 . [4]
Cambios respecto a C11
C17 corrige numerosos defectos menores de su predecesor, C11, sin introducir nuevas características en el lenguaje. [2]
La macro __STDC_VERSION__
se incrementa al valor 201710L
.
Para ver una lista detallada de los cambios con respecto a la norma anterior, consulte el Resumen de solicitud de aclaración para C11 . [5]
Las siguientes características fueron marcadas como obsoletas:
ATOMIC_VAR_INIT
- Soporte para llamar a
realloc
con un tamaño de 0
Compatibilidad de los compiladores
Lista de compiladores compatibles con C17:
- CCG 8.1.0 [4]
- LLVM Clang 7.0.0 [6]
- Versión 8.40.1 de IAR EWARM [7]
- Microsoft Visual C VS 2019 (16.8) [8]
- Pelles C 9.00 [9]
Véase también
- C 23, C 20, C 17, C 14, C 11, C 03, C 98, versiones del estándar del lenguaje de programación C
- Compatibilidad de C y C
Referencias
Lectura adicional
- N2176 (borrador final de la norma C17); WG14; 2017.
- ISO/IEC 9899:2018 (norma oficial C17); ISO ; 2018.
Enlaces externos
- Documentos del Grupo de trabajo 14 del lenguaje C (WG14)