每一台机器内部对变量的字节存储顺序不同,(有的系统是高位在前,地位在后,而有的是相反的),而网络传输数据大家一定要统一顺序,所以,对内部字节表示顺序和网络字节序不同的机器,就一定要对数据进行转换(比如ip地址,端口的表示) 如果相同的话,也要调用,转换与否是由系统函数自己来决定的。
uint32_t htonl(uint32_t hostint32) // host to network long 以网络字节序表示的32位整数
uint16_t htons(uint16_t hostint16)// host to network short 以网络字节序表示的16位整数
uint32_t ntohl(uint32_t netint32) //network to host long 以主机字节序表示的32位整数
uint16_t ntohs(uint16_t netint16) //network to host short 以主机字节序表示的16位整数