有个问题想请教您,让飞机通过socket随机高度飞的时候flightgear控制台上出现” Error: version mismatch in FGNetFDM2Props() read 402653184 need 24”这条语句。经过实验,发现flightgear收到的version一次是24(正确的) 一次是402653184(应该是没有经过htonl()处理,或多处理了一次)。表面飞机高度在不断随机变化,而实际上是flightgear一次正常接收一次接收失败(控制台只显示了失败的那次)。看了源码以后发现htond()和htonf()函数都有sgIsLittleEndian()作为网络字节顺序判断,而htonl()默认是没有的。可不可能是因为源代码中的这个问题导致的呢?为什么源码中的htonl()默认没有sgIsLittleEndian()? 还请帮忙指点,谢谢了!