C2x es un nombre informal para la próxima revisión principal del estándar del lenguaje C (después de C17 ) . [1] [2] Se espera que se vote en 2023 y, por lo tanto, será C23 . [3]
Características
Los cambios integrados en el borrador de trabajo son: [4]
- Compatibilidad con ISO / IEC 60559: 2020, la versión actual del estándar IEEE 754 para aritmética de punto flotante.
- _Static_assert de un solo argumento
- 11 C ++ estilo atributo de la sintaxis y los
nodiscard
,maybe_unused
,deprecated
, yfallthrough
atributos - Aritmética de coma flotante binaria extendida, aritmética de coma flotante decimal
memccpy()
,strdup()
,strndup()
- similar a funciones que se encuentran en los POSIX y SVID extensiones C- Se requiere la representación del signo del complemento a dos
- Eliminación de las definiciones de funciones de K&R
- Las etiquetas pueden aparecer antes de las declaraciones y al final de las declaraciones compuestas
- Parámetros sin nombre en las definiciones de funciones
- Literales binarios como
0b10101010
- Mejor soporte para usar const con matrices
Otras características propuestas son:
- Escriba funciones genéricas para realizar aritmética de enteros comprobados ( desbordamiento de enteros )
_BitInt(N)
yUnsignedBitInt(N)
tipos para enteros con precisión de bits- Normalización de la
typeof(...)
( typeof operador) [5] - Una característica para la inclusión de recursos binarios en el preprocesador (
#embed
)
Apoyo
Los compiladores GCC 9 [6] y Clang 9.0 [7] admiten la opción -std = c2x para admitir este estándar.
Referencias
- ^ "Historia de C" . cppreference .
- ^ Keaton, David (19 de septiembre de 2016). "WG 14 N 2086 - C2x Charter" . www.open-std.org . Consultado el 3 de enero de 2021 .
- ^ "Revisado C23 Schedule WG 14 N 2759" (PDF) . www.open-std.org . Consultado el 19 de junio de 2021 .
- ^ ISO / IEC JTC1 / SC22 / WG14 (12/12/2020). "Borrador C2X" (PDF) .
- ^ Meneide, JeanHeyd (7 de marzo de 2021). "No tan mágico - tipo de (…) en C" . Consultado el 19 de abril de 2021 .
- ^ "Cambios en GCC 9" . Notas de la versión de GCC 9 .
- ^ "Agregar un nuevo modo de idioma para C2x" . Repositorio de proyectos LLVM .
enlaces externos
Precedido por C17 | Estándares del lenguaje C | Último |