編譯器對 C99 的支援
來自 cppreference.com
[編輯] C99 核心語言特性
本節不完整 原因:需要列出 C 編譯器,驗證 |
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 |