Linux网络协议.之 tcp,udp,socket网络编程(四).之网络转换函数htonl,n ...

打印 上一主题 下一主题

主题 551|帖子 551|积分 1653

字节转换函数
把给定系统所采用的字节序称为主机字节序,为了避免不同类别主机之间在数据交换时由于对于字 节序的不同而导致的不对,引入了网络字节序。
主机字节序到网络字节序
u_long htonl(u_long hostlong);
u_short htons(u_short short);
网络字节序到主机字节序
u_long ntohl(u_long hostlong);
u_short ntohs(u_short short);
IP地址的转换
inet_aton()
将strptr所指的字符串转换成32位的网络字节序二进制值
inet_addr()
功能同上,返回转换后的地址 仅适用于IPV4,堕落时返回-1。
  1.     局限性:不能用于255.255.255.255的转换
复制代码
inet_ntoa()
将32位网络字节序二进制地址转换成点分十进制的字符串
inet_pton()
int inet_pton(int af, const char* src ,void* dst)
  1.     将IPV4/IPV6 的地址转换成binary格式
  2.     使用于IPV4/IPV6 能正确处理255.255.255.255的转换问题
  3.     参数:
  4.     1.地址协议族(AF_INET或AF_INET6)
  5.     2.src:是一个指针(填写分点形式的IP地址(主要指IPV4))
  6.     dst:转换的结果给到dst
复制代码
inet_ntop(int af,const void *src,char *dst,socklen_t size)
把ipv4和ipv6的网络字节序变本钱地的字符串形式的IP地址
  1.     参数
  2.     1.af:地址协议族(AF_INET或AF_INET6)
  3.     2.src:是一个指针(32)
  4.     3.dst:输出结果为32位点分形式的IP地址
  5.     4.size:长度
复制代码
————————————————
  1.                         版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
复制代码
原文链接:https://blog.csdn.net/m0_74712453/article/details/132631903

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

用多少眼泪才能让你相信

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表