概述
IPv4地址的二进制形式长度为32,使用我们常用的点分十进制形式进行表示那么最长长度为15,例如“255.255.255.255”
所以在posix的<netinet/in.h>中定义的IPv4地址字符串形式最大长度为16字节,‘ ’结束符也需要占据1个字节:
#define INET_ADDRSTRLEN 16
IPv6地址的二进制形式长度为128,使用16进制形式进行表示如“ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff”,一开始我以为IPv6地址字符串形式最大长度为128/4+7+1=40字节
但是看posix的<netinet/in.h>中定义的IPv6地址字符串形式最大长度为46字节
#define INET6_ADDRSTRLEN 46
原来IPv4映射的IPv6地址可能出现这种格式“ffff:ffff:ffff:ffff:ffff:ffff:255:255:255:255”,也就是45字节,加上结束符就是46字节了
最后
以上就是哭泣小懒虫为你收集整理的4.IPv4和IPv6地址长度的全部内容,希望文章能够帮你解决4.IPv4和IPv6地址长度所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复