C有什么工具可以检查常见的未指定行为吗?

通常人们会对一个编码的特定平台进行假设,例如,有符号整数使用二进制补码存储器,或者(0xFFFFFFFF == -1)或者这种性质的东西.

是否存在一个可以检查代码库的工具,以了解最常见的违反这些类型的事情(对于那些我们想要可移植代码但没有奇怪的非二进制补码机器的人)?

(我上面的示例是特定于有符号整数的,但是我对其他错误(比如对齐或字节顺序)感兴趣)

解决方法

您可能希望打开各种级别的编译器警告,您可以将警告视为错误.

如果还有其他假设,你知道你在代码中的各个方面做出了决定.如果您可以使用静态断言,您将在编译时失败.

相关文章

本程序的编译和运行环境如下(如果有运行方面的问题欢迎在评...
水了一学期的院选修,万万没想到期末考试还有比较硬核的编程...
补充一下,先前文章末尾给出的下载链接的完整代码含有部分C&...
思路如标题所说采用模N取余法,难点是这个除法过程如何实现。...
本篇博客有更新!!!更新后效果图如下: 文章末尾的完整代码...
刚开始学习模块化程序设计时,估计大家都被形参和实参搞迷糊...