字节序操作 - 有一个C库吗?

Mal*_*ous 9 c endianness

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

我能找到的唯一的东西是套接字调用,比如htons(),但是它们在每个平台上需要不同的#include文件,以及一些像这样的 GPL代码,但是这个特定的文件虽然全面,但似乎错过了一些高性能函数由一些编译器提供.

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

Dan*_*ory 2

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

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