C/C++编程题之整数转IP地址

来源:互联网 发布:sql中in与all的区别 编辑:程序博客网 时间:2024/05/16 10:18

将输入的整数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;}




0 0
原创粉丝点击