2020年6月7日 下午12:25
网络字节序与主机字节序 - jacktu - 博客园
内存地址
1 | 4000 4001 4002 4003 |
网络字节顺序
网络字节顺序是TCP/IP中规定好的一种数据表示格式,它与具体的CPU类型、操作系统等无关,从而可以保证数据在不同主机之间传输时能够被正确解释。网络字节顺序采用big endian排序方式。
进行转换
- Bsd socket提供了转换的函数 有下面四个
- htons 把unsigned short类型从主机序转换到网络序
- htonl 把unsigned long类型从主机序转换到网络序
- ntohs 把unsigned short类型从网络序转换到主机序
- ntohl 把unsigned long类型从网络序转换到主机序
在使用little endian的系统中 这些函数会把字节序进行转换
在使用big endian类型的系统中 这些函数会定义成空宏