字节顺序操作 - 是否有用于此目的的 C 库?

2024-01-09

对于我编写的程序(使用原始文件数据),我经常需要在大端和小端之间进行转换的函数。通常我自己写这些(这里的许多其他帖子都对此进行了介绍),但由于多种原因,我不太热衷于这样做 - 主要原因是缺乏测试。我真的不想花很长时间在大端模拟器中测试我的代码,并且通常完全省略大端机器的代码。我还宁愿利用各种编译器提供的更快的功能,同时仍然保持我的程序跨平台。

我唯一能找到的是像 htons() 这样的套接字调用,但它们在每个平台上需要不同的 #include 文件,以及一些 GPL 代码像这样 http://proton.cygnusx-1.org/~edgan/hash/hash/aircrack-ng/src/osdep/byteorder.h,但是该特定文件虽然全面,但似乎错过了某些编译器提供的一些高性能功能。

那么,有人知道有一个库(最好只是一个 .h 文件)经过充分测试并提供了一组标准函数来处理跨许多编译器和平台的字节顺序吗?


在过去的十年里,已经有许多关于 Boost 类(至少对于 C++)的建议来做到这一点,但不幸的是,没有一个能够实现。

我不知道有什么比 htons() 函数集更好的通用解决方案。

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

字节顺序操作 - 是否有用于此目的的 C 库? 的相关文章

随机推荐