htonl: 将long型主机字节序转换为网络字节序
htons: 将short型主机字节序转换为网络字节序
ntohl: 将long型网络字节序转换为主机字节序
ntohs: 将short型网络字节序转换为主机字节序
项目中遇到个问题,使用了htonl函数对short型网络字节序数进行转换,导致程序出错, 以为既然是很小的数字,那么short型和long型没有没有区别
大端小短,主机字节序、网络字节序的概念就不多说了,总之就是,对于4字节整数0x12345678:
小端:高字节放在地址的高位,低字节放在地址的低位
内存地址
4003 4002 4001 4000 SMALL 12 34 56 78
大端:高字节放在地址的低位,低字节放在地址的高位
内存地址