网络字节序
htons
htonl
uint32_t val; //htonl
uint16_t val2;//htons
得要用返回值接收
gdb 调试程序
p /x val //十六进制打印
发现结果
每个地址两个字节 在前面放后面对应的位置
例如
0x0101 uint16_t 类型 htons --->返回0x0101 这种情况下没有变化
0x0110 uint16_t 类型 htons --->返回0x1001 可以看出发生变化
所以原值对于返回值有不同的情况 有的发生变化 而有的却没有
同样
端口 如果cpu是x86结构的那么需要进行主机字节序到网络字节序的转换,有些CPU结构的则不需要 因为其传输的本身也就是主机字节序就是大端模式,不需要转换
而对于网络地址ip 由于使用inet_addr()函数 则不需要再进行转换 已经成功转换成功!