【发布时间】:2011-02-16 11:38:25
【问题描述】:
是否可以将floats 从大端转换为小端?我通过 TCP 将 PowerPC 平台的大端值发送到 Windows 进程(小端)。这个值是一个float,但是当我将memcpy 的值转换为Win32 浮点类型然后在那个值上调用_byteswap_ulong 时,我总是得到0.0000?
我做错了什么?
【问题讨论】:
-
我认为它们都是 IEEE 格式,但你应该仔细检查。
-
如果你不打电话给
_byteswap_ulong会怎样? -
不要实现这样的东西。结帐 boost::endian 在:boost.org/doc/libs/1_64_0/libs/endian/doc/index.html</strike> -
@morteza 的回答,他尝试过但未能三振出局,这不起作用——浮动支持已从
boost::endian中删除,因为它不起作用。
标签: c++ endianness