您的位置:首页 > 其它

输入4字节整数,输出IPv4地址

2013-03-26 13:35 323 查看
这里有个隐含假设,即,整数也是用四字节表示的。这样的假设下,四字节IP地址和整数在内存中无差别。
比如:

#include <stdio.h>
typedef struct IPAddr_
{
unsigned char a;
unsigned char b;
unsigned char c;
unsigned char d;
}IPAddr_t;

typedef union u_
{
int x;
IPAddr_t y;
}u;    // 整数与IP地址用共用体表示

void main()
{
u testu;
testu.x = 303199946; // 也可用“scanf("%d",&(testu.x)); ”输入整数

// 输出IP地址202.118.18.18
printf("%d.%d.%d.%d",testu.y.a,testu.y.b,testu.y.c,testu.y.d);
return;
}
输出注意大端小端
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐