常见的网络字节转换函数有:
htons():host to network short,将short类型数据从主机字节序转换为网络字节序。
ntohs():network to host short,将short类型数据从网络字节序转换为主机字节序。
htonl():host to network long,将long类型数据从主机字节序转换为网络字节序。
ntohl():network to host long,将long类型数据从网络字节序转换为主机字节序。
通常,以s为后缀的函数中,s代表2个字节short,因此用于端口号转换;以l为后缀的函数中,l代表4个字节的long,因此用于IP地址转换。
————————————————————————————————————————————————————————————————
cat hto.c
make hto
cc hto.c -o hto
#./hto
Host ordered port: 0x1234
Network ordered port: 0x3412
Host ordered address: 0x12345678
Network ordered address: 0x78563412
cat inetaddr.c
make inetaddr
cc inetaddr.c -o inetaddr
./inetaddr
Network ordered integer addr: 0x101a8c0
Network ordered integer addr: 0xb01a8c0
From:http://c.biancheng.net/cpp/html/3047.html
htons():host to network short,将short类型数据从主机字节序转换为网络字节序。
ntohs():network to host short,将short类型数据从网络字节序转换为主机字节序。
htonl():host to network long,将long类型数据从主机字节序转换为网络字节序。
ntohl():network to host long,将long类型数据从网络字节序转换为主机字节序。
通常,以s为后缀的函数中,s代表2个字节short,因此用于端口号转换;以l为后缀的函数中,l代表4个字节的long,因此用于IP地址转换。
————————————————————————————————————————————————————————————————
cat hto.c
make hto
cc hto.c -o hto
#./hto
Host ordered port: 0x1234
Network ordered port: 0x3412
Host ordered address: 0x12345678
Network ordered address: 0x78563412
cat inetaddr.c
make inetaddr
cc inetaddr.c -o inetaddr
./inetaddr
Network ordered integer addr: 0x101a8c0
Network ordered integer addr: 0xb01a8c0
From:http://c.biancheng.net/cpp/html/3047.html
作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:https://jackxiang.com/post/9581/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!
最后编辑: jackxiang 编辑于2017-12-29 21:37
评论列表