Namespaces
Variants

Compiler support for C99

From zh.cppreference.net

C99 核心语言特性

C99 特性

提案文档

GCC
Clang
MSVC
Apple Clang
EDG eccp
Intel C++
Nvidia HPC C++ (原 PGI)*
Nvidia nvcc
Cray
标识符中的 通用字符名称 3.1 是 是
提升的 翻译限制 N590 0.9 不适用
// 注释 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 不适用
枚举列表中的 enumerator-list 尾随逗号 0.9 是 是
十六进制 浮点常量 N308 2.8 是 是
复合字面量 N716 3.1 是 是
浮点环境 部分支持 部分支持
要求对有符号整数类型的除法进行截断处理 N617 0.9 N/A
在 main() 函数 中的隐式 return 0 ; 是 是 是
声明与语句混合排序 N740 3.0 是 是
初始化语句 在 for 循环中 是 是 是
inline 内联函数 N741 4.3 是 是
预定义变量 __func__ N611 2.95 是 是
函数声明中的Cvr限定符与 static 在 [ ] 内的使用 3.1 是
可变参数宏 N707 2.95 是 是
_Pragma 预处理器运算符 N634 3.0 是 部分支持 *
浮点求值的标准杂注 N631
N696
否 否


C99 特性


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