使用-std = c99进行编译时,是否需要使用-pedantic或-ansi?

时间:2012-02-02 16:59:05

标签: c gcc compiler-construction

我是C / GCC noob,对不起。谢谢。

3 个答案:

答案 0 :(得分:9)

使用-ansi相当于使用-std=c89-std=c++98,具体取决于您是在编译C或C ++文件,因此您不希望将其与{{1}一起使用因为它会发生冲突。另一方面,-std=c99独立于-pedantic,因此可以与其一起使用。

答案 1 :(得分:1)

有愚蠢的事情就是名字中的线索;有没有人需要迂腐吗?

如果您需要这种合规级别,那么您需要它,但解决任何迂腐警告不太可能影响您的代码行为,而只是做更多的工作。

答案 2 :(得分:1)

你可以使用-pedantic -std = c99或-ansi -ansi和-std = c99都是标准配置编码器并且相互冲突,因为一次只能跟随一个标准。

-padantic使用严格的ISO CISO C++标准检查程序并拒绝任何禁用的表达式。没有这个选项,可以允许一些传统的C和C ++功能。