#include<stdio.h>union{ int i;char x[2]; }a;void main(){ a.x[0]=10;a.x[1]=1; printf("%d",a.i);
1 回答

HUX布斯
TA贡献1876条经验 获得超6个赞
#include<stdio.h>
union{ int i;char x[2]; }a;
void main()
{ a.x[0]=10;
a.x[1]=1;
printf("%d",a.i);
存储的时候是“低位在前”,a[0]是00001010,a[1]是00000001
输出的i是将二个字节作为一个整数看,即是x[1]x[0]也就是00000001 00001010
即 256+8+2=266。
- 1 回答
- 0 关注
- 243 浏览
添加回答
举报
0/150
提交
取消