C语言 从大端到小端迁移:如何预先确定有问题的代码?



我准备将一个小项目的C代码(30+ kSLOC)从32位大端平台迁移到32位小端平台。我想在节日前检查一下,这将是多少工作,所以我想找出依赖于原始尾序的代码。

我正在寻找一个尽可能全面的C代码习语集合,这取决于大端序。不要费心去检测这些习惯用法在实际代码中的使用,我有一些代码分析工具支持。

注意事项:

  • Fishy指针强制转换和不同大小的整数类型之间的Fishy类型转换。这些也可能是潜在的对齐或严格混叠错误。
  • 序列化/反序列化代码,其中数据读取/写入字节数组。
  • 没有序列化/反序列化代码的数据通信接口。也就是说:CPU恰好与网络具有相同的端序,这在大端序系统中尤其常见。以太网、CAN、UART等。
  • 联合式双关语。

相关内容

  • 没有找到相关文章

最新更新