码迷,mamicode.com
首页 > 其他好文 > 详细

判断IP是否是IPV4

时间:2020-02-21 13:00:05      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:int   个数   一个   turn   ons   amp   入参   dip   输入参数   

bool isVaildIp(const char *ip)
{
	int dots = 0; /*字符.的个数*/
	int setions = 0; /*ip每一部分总和(0-255)*/ 

	if (NULL == ip || *ip == ‘.‘) { /*排除输入参数为NULL, 或者一个字符为‘.‘的字符串*/ 
		return false;
	}   

	while (*ip) {

		if (*ip == ‘.‘) {
			dots ++; 
			if (setions >= 0 && setions <= 255) { /*检查ip是否合法*/
				setions = 0;
				ip++;
				continue;
			}   
			return false;
		}   
		else if (*ip >= ‘0‘ && *ip <= ‘9‘) { /*判断是不是数字*/
			setions = setions * 10 + (*ip - ‘0‘); /*求每一段总和*/
		} else 
			return false;
		ip++;   
	}   

	if (setions >= 0 && setions <= 255) {
		if (dots == 3) {
			return true;
		}   
	}   

	return false;
}

  

判断IP是否是IPV4

标签:int   个数   一个   turn   ons   amp   入参   dip   输入参数   

原文地址:https://www.cnblogs.com/porkerface/p/12340840.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!