1
我确定这个问题之前已经提过很多次了,所以我做了一个快速搜索,发现this Wikipedia page解释了浮点值的结构。如何读/写字节数组的浮点值?
我送的设备上以及由某些浮点值的网络接收数据(游戏),这使我对以下问题:
- 难道我担心字节顺序?
- 如果字节顺序很重要,我怎样才能提取这些值而无需执行
*(float*)
转换或联合? (如整数移位技巧)
在此先感谢。
我确定这个问题之前已经提过很多次了,所以我做了一个快速搜索,发现this Wikipedia page解释了浮点值的结构。如何读/写字节数组的浮点值?
我送的设备上以及由某些浮点值的网络接收数据(游戏),这使我对以下问题:
*(float*)
转换或联合? (如整数移位技巧)在此先感谢。
如果你直接从内存中写出一个浮点值,那么,是的,你将不得不处理字节序。
有几千种方法可以处理这个问题。网络协议经常使用的一种方法是将结构读入字节缓冲区,交换所有元素(如果主机的字节序不符合协议的字节顺序),然后将其视为正常的主机结构。
这里讨论一些浮点的字节顺序。 http://en.wikipedia.org/wiki/Endianness#Floating-point_and_endianness – DavidMFrey 2011-03-22 21:16:40