首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

如何算

2012-03-29 
怎么算?union un{int ichar c[21]}void main(){union un xx.c[0]1x.c[1]1x.c[2]1x.c[3]

怎么算?
union un

int i;
char c[21];
};

void main()

union un x;
x.c[0]='1';
x.c[1]='1';
x.c[2]='1';
x.c[3]='2';
printf("%d\n",x.i);
}

[解决办法]
答案与平台相关,在little-endian和big-endian上的结果不同
[解决办法]
运行一下就知道了
[解决办法]
小端的话,
x.c[0]='1'; 
x.c[1]='1';
x.c[2]='1';
x.c[3]='2';

这些就是i的内存数据呗
[解决办法]
刚去看了下,这个在调试时看下内存就明白了……
[解决办法]
小端: 0x32313131

大端: 0x31313132

用计算器换算下

热点排行