C语言—判断IP地址是否合法

判断输入的IP地址是否合法

#include <stdio.h>

unsigned long ip;
int judge(int ,int ,int ,int);

void main()
{
	char *ipstr[50];
	int a,b,c,d;
	printf("please input a ip\n");
	scanf("%s",ipstr);	

	sscanf(ipstr,"%d.%d.%d.%d",&a,&b,&c,&d);
	if(judge(a,b,c,d))
	{	
		ip=inet_addr(ipstr);
		printf("the int ip is %ld\n",ip);
	}
	else
		printf("is not ip\n");

}
int judge(int a,int b, int c, int d)
{
	if (a < 0)
    		return 0;
 	if (a > 255)
    		return 0;
  	if (b < 0)
   		 return 0;
  	if (b > 255)
    		return 0;
  	if (c < 0)
    		return 0;
  	if (c > 255)
    		return 0;
  	if (d < 0)
    		return 0;
  	if (d > 255)
    		return 0;
  	return 1;
}	

运行结果:

please input a ip
12.13.14.15
the int ip is 252579084


你可能感兴趣的:(C语言)