ip在c++程序里代表一个32位的unsigned int
比如unsigned int ip = 3232236030;
那如何写程序将ip转换成192.168.1.254这样的形式显示出来
#include <iostream>
using namespace std;
int main()
{
unsigned int ip = 3232236030;
///3232236030对应的二进制为
//1100 0000 1010 1000 0000 0001 1111 1110
int ip1, ip2, ip3, ip4;
ip1 = ((ip & 0xff000000) >> 24);//获取1100 0000十进制为192
ip2 = ((ip & 0x00ff0000) >> 16);//获取1010 1000十进制为168
ip3 = ((ip & 0x0000ff00) >> 8);//获取0000 0001十进制为1
ip4 = (ip & 0x000000ff);//获取1111 1110十进制为254
cout << ip1 << "." << ip2 << "." << ip3 << "." << ip4 << endl;
//输出192.168.1.254
}