C 标准与GCC编译器
预计时间: 2分钟
- 从 GCC 4.5 开始基本上完全支持 C99。
- 从 GCC 4.9 开始基本上完全支持 C11。
GCC 参数配置
C 语言标准 | GCC 参数配置 |
---|---|
C89 或 C90 或 ANSI C 或 ISO C | -std=c90 或 -std=iso9899:1990 或 -ansi |
C94 或 C95 | -std=iso9899:199409 |
C99 | -std=c99 或 -std=iso9899:1999 |
C11 | -std=c11 或 -std= so9899:2011 |
C17 | -std=c17 或 -std=iso9899:2017 |
GCC 编译器版本
查看自己系统安装的 GCC 版本,并在官网查询该版本对 C 语言标准的支持情况。
gcc --version
- 查看 gcc 9.3 对 C 语言标准的支持情况 https://gcc.gnu.org/onlinedocs/gcc-9.3.0/gcc/Standards.html
- 如果未提供 gcc 9.3 命令行参数配置 C 语言选项,则默认值为
-std=gnu11
,即 GCC 9.3 默认支持 C11 标准。 - 查看 gcc 8.3 对 C 语言标准的支持情况 https://gcc.gnu.org/onlinedocs/gcc-8.3.0/gcc/Standards.html
- 如果未提供 gcc 8.3 命令行参数配置 C 语言选项,则默认值为
-std=gnu11
,即 GCC 8.3 默认支持 C11 标准。
GCC中C99和C11状态
在 GCC, the GNU Compiler Collection 上有关于 C 语言标准的支持情况的最新的文档描述:Language Standards Supported by GCC
- GCC中C99功能的状态 https://gcc.gnu.org/c99status.html
- GCC中C11功能的状态 https://gcc.gnu.org/wiki/C11Status
最后更新时间为2021年03月08日