gcc -E -dM - </dev/null | grep "STDC_VERSION"
对应关系如下
如果没查到,则默认是c89的标准;
如果是#define __STDC_VERSION__ 199901L,则默认支持的是c99标准;
如果是#define __STDC_VERSION__ 201112L,则默认支持的c11标准;
如下图,说明默认支持的是C11标准
![]()
该博客介绍了如何通过GCC编译器的预处理指令检查C语言的版本支持情况。如果未找到定义,则默认遵循C89标准。若定义了__STDC_VERSION__为199901L,则表示支持C99标准;若定义为201112L,则表明支持C11标准。示例结果显示系统默认支持C11标准。
gcc -E -dM - </dev/null | grep "STDC_VERSION"
对应关系如下
如果没查到,则默认是c89的标准;
如果是#define __STDC_VERSION__ 199901L,则默认支持的是c99标准;
如果是#define __STDC_VERSION__ 201112L,则默认支持的c11标准;
如下图,说明默认支持的是C11标准
![]()
2555

被折叠的 条评论
为什么被折叠?