命名空间
变体
操作

编译器对 C99 的支持

来自 cppreference.cn

[编辑] C99 核心语言特性

C99 特性

 
提案

 
GCC
Clang
MSVC
Apple Clang
EDG eccp
Intel C++
Nvidia HPC C++ (前 PGI)*
Nvidia nvcc
Cray
标识符中的通用字符名 3.1
翻译限制的增加 N590 0.9 N/A
// 注释 N644 2.7
restrict 指针 N448 2.95 部分*
增强的算术类型 N815
N601
N620
N638
N657
N694
N809
部分 可能
柔性数组成员 3.0
可变长度数组 (VLA) 类型 N683 0.9
可变修饰 (VM) 类型 N2778 N/A
指定初始化器 N494 3.0
非常量初始化器 1.21 N/A
幂等 cvr-限定符 N505 3.0 N/A
枚举器列表中的尾随逗号 0.9
十六进制浮点常量 N308 2.8
复合字面量 N716 3.1
浮点环境 部分 部分
对有符号整数类型除法要求截断 N617 0.9 N/A
main() 函数中的隐式 return 0;
声明和语句混合顺序 N740 3.0
for 循环中的 init-statement
inline 函数 N741 4.3
预定义变量 __func__ N611 2.95
函数声明中 [] 内的 Cvr-限定符和 static 3.1
可变参数宏 N707 2.95
_Pragma 预处理器运算符 N634 3.0 部分*
浮点评估的标准 pragma N631
N696
 

C99 特性
 

提案
GCC
Clang
MSVC
Apple Clang
EDG eccp
Intel C++
Nvidia HPC C++ (前 PGI)*
Nvidia nvcc
Cray