将输入的整数IP信息转换为string型IP信息,即X.X.X.X的格式
输入:string类型的值
输出:X.X.X.X的格式的IP信息
返回:正常解析时返回非空的IP信息,异常时strIP为空值
代码
<pre name="code" class="cpp">string GetIPByValue(string strValue)
{
string res;
char ip[18] = {0};
unsigned int value1 = 0,value2 = 0,value3 = 0,value4 = 0;
char *strV = (char*)strValue.c_str(); //string类型转字符串
char *p = strV;
while(*p != '\0')//判断有效性
{
if(*p < '0' || *p > '9')
return "";
p++;
}
unsigned int value = atoi(strV);//字符串转整数
value1 = (value>>24)&0x000000ff;
value2 = (value>>16)&0x000000ff;
value3 = (value>>8)&0x000000ff;
value4 = (value)&0x000000ff;
sprintf_s(ip,sizeof(ip),"%u.%u.%u.%u\0",value1,value2,value3,value4);
res = ip;
return res;
}