当我要求查看cc的当前版本时,我得到了。
$ cc --version cc (Ubuntu/Linaro 4.7.2-2ubuntu1) 4.7.2 Copyright (C) 2012 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. $
我想知道使用的是c89,c90,c99或c11。
[当我要求查看cc的当前版本时,我得到了。 $ cc --version cc(Ubuntu / Linaro 4.7.2-2ubuntu1)4.7.2版权所有(C)2012 Free Software Foundation,Inc。参见源代码...
来自gcc6 info gcc
和gcc5 https://gcc.gnu.org/onlinedocs/gcc-5.4.0/gcc/Standards.html#Standards的有用信息
最小测试程序
第一行将提供您的GCC版本(4.7.2)
需要注意的是,gcc的-std =选项不能用于将编译器“沙盒化”为不支持更高版本的标准C的构造。无论是否有-pedantic
,这都是正确的>
如果尝试使用某些C99代码构造进行编译,则不能依赖gcc -std=c89 -pedantic
来给您错误或警告。在某些情况下会,在其他情况下不会。例如,即使没有在C99之前添加,它也会很高兴地在printf()调用中编译使用%zu
格式说明符的代码。
默认gcc命令是ISO C90的GNU方言(包括某些C99功能)。这是C代码的默认设置。