【发布时间】:2012-10-09 05:46:00
【问题描述】:
我们需要支持 3 个硬件平台 - Windows(小端)和 Linux Embedded(大端和小端)。我们的数据流依赖于它使用的机器,并且需要将数据分解为位域。
我想写一个宏(如果可能的话)来抽象出细节。在 Linux 上,我可以使用 bswap_16/bswap_32/bswap_64 进行小端转换。
但是,我在我的 Visual C++ 包含中找不到这个。
是否有适用于两个平台(Windows 和 Linux)的通用内置插件?
如果不是,那么我可以在 Visual C++ 中使用什么来进行字节交换(除了自己编写——希望内置一些机器优化)?
谢谢。
【问题讨论】:
标签: c++ c linux visual-c++ endianness