#include <stdio.h>
int main()
{
char ip[32] = "192.168.1.151"; //IP值
char scIPAddress[32] = ""; //存储字符串IP
unsigned int nIPAddress = 0; //存储整形IP
int nTmpIP[4] = {0}; //分割IP
int i=0;
//字符串转整形
sscanf(ip,"%d.%d.%d.%d",&nTmpIP[0],&nTmpIP[1],&nTmpIP[2],&nTmpIP[3]);
for(i=0;i<4;i++)
{
nIPAddress += (nTmpIP[i]<<(24-(i*8)) & 0xFFFFFFFF);
}
//输出
printf("整形IP:%u\r\n",nIPAddress);
//整形转字符串
sprintf(scIPAddress,"%d.%d.%d.%d", nIPAddress>> 24, (nIPAddress & 0xFF0000) >> 16, (nIPAddress & 0xFF00) >> 8, nIPAddress & 0xFF);
//输出
printf("字符串IP:%s\r\n",scIPAddress);
return 0;
}
效果图: