您的位置:首页 > 其它

检测一个字符串ip是否合法

2012-10-03 15:18 169 查看
int check_ip(char *ip){
char * p=ip;
int count=0;
while(*p != '\0'){
if( *p == '.') count++;
p++;
}
if( count != 3 )return false;
p=ip;
for(int i=0;i<4;++i){
int len=0;
int tem=0;
while(*p!=NULL){
if(*p=='.')break;
tem=tem*10+*p-'0';
p++;
len++;
}
if(len==1){
if(tem<0||tem>9)return false;
}else if(len==2){
if(tem<10 ||tem>99)return false;
}else if(len==3){
if(tem<100||tem>255)return false;
}else return false;
if(*p!='\0')p++;
}
return true;
}


先检测是不是有三个点

然后一次检查每个部分的取值是否在合法的范围内
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: