【发布时间】:2020-02-16 11:20:03
【问题描述】:
如果我使用-std=c89 将标准指定为ANSI C,我的代码将不会运行,直到我执行某些更改以使其符合标准。如果我已经设置了-std=c89 标志,那么此时我还需要-pedantic 吗?
顺便说一句,这个想法是编写尽可能独立于平台的 C 代码。我已经在使用-pedantic,因为我知道它会使编译器更加严格。但是,明确选择 ANSI C 标准也是有意义的。出于某种原因,我认为这会使 -pedantic 变得多余,因为切换到 ANSI C 本身会产生许多错误并且看起来“足够严格”。
【问题讨论】:
-
问题不清楚。需要它做什么?如果目标只是让您的代码编译,您是否需要
-pedantic?不。如果您的目标是帮助捕获更多错误,您是否需要-pedantic?是的。
标签: c gcc c89 compiler-flags ansi-c