bool isValidIP(char* str){
if (NULL==str)
{
return false;
}
bool preIsNum=false;
int numOfPoint=0;
int numOfNum=0;
char *p=str;
while ('\0'!=*p&&numOfPoint<=3&&numOfNum<=4)
{
if('.'!=*p&&(*p<'0'||*p>'9')){
return false;
}
if('.'==*p){
if (!preIsNum)
{
return false;
}
else
{
preIsNum=false;
numOfPoint++;
}
p++;
}
else{
int tmp=0;
bool prevHasZero=0;
while ('\0'!=*p&&*p>='0'&&*p<='9')
{
if (prevHasZero==true)
{
return false;
}
if (*p=='0'&&tmp==0)
{
prevHasZero=true;
}
tmp=tmp*10+(*p-'0');
p++;
}
if (tmp<0||tmp>255)
{
return false;
}
numOfNum++;
preIsNum=true;
}
}
if (numOfPoint==3&&numOfNum==4)
{
return true;
}
else{
return false;
}
}检测ip地址字符串是否正确
最新推荐文章于 2023-09-28 01:51:24 发布
本文介绍了一个用于验证字符串是否为有效IPv4地址的C语言函数。该函数通过检查点的数量、数字部分的有效性以及每段数字的范围来判断输入字符串是否符合IPv4地址的标准格式。
318

被折叠的 条评论
为什么被折叠?



