#include <stdio.h>
bool IsDigit(char Digit)
{
bool Flag = false;
if(Digit >= '0' && Digit <= '9')
{
Flag = true;
}
return Flag;
}
bool IsFormatValid(char IP[])
{
int DotCnt = 0;
bool Flag = false;
while(*IP != '\0')
{
if(*IP == '.')
{
DotCnt++;
}
else if(!IsDigit(*IP))
{
return false;
}
Flag = true;
IP++;
}
if(DotCnt == 3)
{
return Flag;
}
else
{
return false;
}
}
bool IsValueValid(char IP[])
{
int Len = 0;
int Integer = 0;
while(*IP != '\0')
{
if(IsDigit(*IP))
{
Integer = Integer*10 + *IP - '0';
}
else
{
if(Integer > 255)
{
return false;
}
Integer = 0;
}
IP++;
}
}
int main()
{
char IpAddress[30];
printf("Please input the ip address:\n");
scanf("%s", IpAddress);
if(IsFormatValid(IpAddress) && IsValueValid(IpAddress))
{
printf("%s -> VALID", IpAddress);
}
else
{
printf("%s -> INVALID", IpAddress);
}
return 0;
}
判断ip地址
最新推荐文章于 2024-04-03 15:32:11 发布