C/C++編程題之整數轉IP地址

將輸入的整數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;
	
}





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章