C11
From cppreference.net
<
c
ISO/IEC 9899:2011 ,亦称 C11 。
目录 |
新语言特性
-
多线程环境
- 原子对象 ( _Atomic )
- 线程局部存储 ( _Thread_local )
- 增强的对齐支持
- Unicode支持
- 泛型选择表达式 ( _Generic )
- 无返回函数 ( _Noreturn )
- 匿名 结构体 与 联合体 成员
- 细粒度 求值顺序
- 扩展 临时对象 的生命周期
- _Static_assert
- 可分析性
可选功能的特性测试宏
-
__STDC_ANALYZABLE__
- 表示支持可分析性。
-
__STDC_LIB_EXT1__
- 表示支持边界检查函数。
-
__STDC_NO_ATOMICS__
- 表示不支持原子对象和原子操作库。
-
__STDC_NO_COMPLEX__
- 表示不支持复数类型和复数数学函数。
- 这些特性在C99中是强制要求的。
-
__STDC_NO_THREADS__
- 表示不支持线程本地存储和线程支持库。
-
__STDC_NO_VLA__
- 表示不支持 可变长度数组和可变修改类型 。
- 这些特性在C99中是强制要求的。
新库特性
新增头文件
库特性
- 并发支持库
- aligned_alloc()
- UTF-16/32 类型别名
- UTF-16/32 转换函数
- quick_exit
- at_quick_exit
- fopen() 和 freopen() 的独占模式 ( "x" )
- 边界检查函数
- timespec
- timespec_get()
- CMPLX(F|L)?
- 新的数值限制宏
- 线程局部 errno