问题描述
当我要求查看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。
最佳回答
在gcc手册(如果已安装)中,通过键入info gcc或在线here对其进行了详细说明。 4.7.2手册的相关部分为here。
默认情况下,gcc不符合任何ANSI /ISO C标准。当前默认值等效于-std=gnu90,这是1989/1990标准,扩展名为GNU-specific。 (未发布语言标准要求的某些诊断。)2015年4月22日发布的5.1.0版将默认值从-std=gnu90更改为-std=gnu11,as documented here。
如果要实现标准一致性,可以使用以下任意一种:
-std=c90 -pedantic
-std=c99 -pedantic
-std=c11 -pedantic
-std=c90也可以拼写为-ansi,-std=c89或-std=iso9899:1990。
-std=iso9899:199409支持C90