walccott

判断IP地址是否有效

IP的有效值是1.0.0.1~255.255.255.255,写个程序,参数是一个char*的IP,返回这个IP是否有效。


// IPcheck.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include<iostream>
using namespace std;
//IP的有效值是1.0.0.1~255.255.255.255
bool checkIP(char* in);
int _tmain(int argc, _TCHAR* argv[])
{
	char*ip = "111.256.255.4";
	if (checkIP(ip))
		cout << "合法IP" << endl;
	else
		cout << "非法IP" << endl;
	system("pause");
	return 0;
}

bool checkIP(char* in)
{
	int k = 0;
	int sum = 0;
	while (*in != \'\0\')
	{
		while (*in != \'.\'&&*in != \'\0\')
		{
			int aa = *in - \'0\';
			if (aa < 0 || aa>9)
				return false;
			sum = 10 * sum + aa;
			++in;
		}
		if (*in != \'\0\')
			++in;
		++k;
		if (k == 2 || k == 3)
		{
			if (sum < 0 || sum > 255)
				return false;
		}
		if (k==1||k==4)
		{
			if (sum < 1 || sum > 255)
				return false;
		}
		if (k > 4)
			return false;
		sum = 0;
	}
	
	return true;
}


版权声明:

分类:

技术点:

相关文章:

  • 2021-10-16
  • 2021-12-06
  • 2021-12-27
  • 2021-09-14
  • 2021-05-03
  • 2021-12-26
  • 2021-12-26
  • 2021-07-31
猜你喜欢
  • 2021-12-26
  • 2021-12-26
  • 2021-12-26
  • 2021-12-26
  • 2021-12-26
  • 2021-12-26
  • 2021-12-26
相关资源
相似解决方案