IP地址转换函数:

本文深入解析了计算机网络中IP地址的表示方式,包括如何使用inet_addr和inet_ntoa函数进行点分十进制IP地址与32位数字表示的IP地址之间的转换,以及htons和ntohs等函数在不同字节顺序环境下的应用。重点阐述了网络字节顺序与主机字节顺序的区别,并通过实例展示了数据在网络传输过程中的字节顺序转换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

unsigned long inet_addr (const char *cp);

inet_addr将一个点分十进制IP地址字符串转换成32位数字表示的IP地址(网络字节顺序)。

  

char* inet_ntoa (struct in_addr in);

inet_ntoa将一个32位数字表示的IP地址转换成点分十进制IP地址字符串。

 

这两个函数互为反函数

  

 

字节顺序转换

htons()--"Host to Network Short"

htonl()--"Host to Network Long"

ntohs()--"Network to Host Short"

ntohl()--"Network to Host Long"

*注意:在你的数据放到网络上的时候,确信它是网络字节顺序
网络字节顺序(大端字节)和x86机器字节顺序(小端字节)
eg:0X3132  在x86上显示21  在网络传输中为12
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值