unix 字节顺序转换

093gszye  于 2022-12-18  发布在  Unix
关注(0)|答案(2)|浏览(122)

我是套接字编程的新手,我提出了这个网络字节转换机制htonshtonl方法。
这些文档说,它们将16位或32位网络号从主机网络字节顺序转换为Internet字节顺序。
当主机和网络共享相同的顺序时会发生什么?
你如何决定你是否应该使用它们?

vcirk6k6

vcirk6k61#

如果顺序相同,他们可能什么也不做。如果顺序相反,他们会交换它。始终使用它们进行传输。两端都会理解

shyt4zoc

shyt4zoc2#

网络字节顺序是big-endian。hton...()ntoh...()函数在big-endian机器上实际上是无操作的,它们在little-endian机器上交换字节。如果您正在实现的网络协议以网络字节顺序传输数字,则无论平台如何,都应始终调用这些函数。这样,所有传出的数字都能保证从本地字节顺序转换为big-endian。并且保证所有输入号码从大端字节序转换为本地字节序。

相关问题