整数转IP地址

将一个整数,比如1567898765转换为xxx.xxx.xxx.xxx的IP地址的形式,

以下是源代码

union IPNode
{
  unsigned int addr;
  struct
  {
    unsigned char s4,s3,s2,s1;
  };
};

void PrintIP(unsigned int x)
{
  IPNode a;
  a.addr = x;
  printf("%d.%d.%d.%d ",a.s1,a.s2,a.s3,a.s4);
}
void main()
{
  unsigned int ip = 1567898765;// "192.11.23.22"
  PrintIP(ip);
}

  这个例子很巧妙的利用了联合体共享内存的特点。

原文地址:https://www.cnblogs.com/junlinfeizixiao/p/6155078.html