“混合声明和代码”警告,值得解决吗?

2024-04-11

我最近启用了-pedanticgcc 上的选项,现在我收到大约两三页的“ISO C90 禁止混合声明和代码”警告。

我这个项目的目标是能够将其部署在任何主流系统带有 C 编译器,所以我意识到假设 C99 将在所有地方都受支持是不明智的,但是是否值得我花时间来解决这些警告?

是否仍然存在不支持混合声明和代码的 C 编译器系统?


嗯,您打算用 C89/90 还是 C99 编写代码?

由于这是您似乎关心的唯一警告,显然您的代码实际上是用 C89/90 编写的。如果确实如此,并且您打算坚持使用 C89/90,那么我会坚持严格的 C89/90 并将所有声明移至块的开头。

另一方面,如果您愿意并计划切换到 C99,那么“错误的”声明就不再是问题。那么您主要关心的是平台/编译器支持。 MS Visual Studio C 编译器是 C89/90 编译器。这是一个问题吗? (考虑到 GCC 在 Windows 平台上可用)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

“混合声明和代码”警告,值得解决吗? 的相关文章

随机推荐