求高手讲解这段代码!!!

2024-12-26 00:02:32
推荐回答(2个)
回答1:

a是一个联合体类型,也就是它里面的成员所占的内存都是同一块内存,也就是占用一个int的内存,4个字节
那么a.x[0] = 10;a.x[1] = 1;
a.x的内存就是 0x010a
所以a.i就是 0x0000010a;十进制就是266

回答2:

a.x[0] = 10,转换为二进制数是 00001010
a.x[1] = 1,转换为二进制数是 00000001
按int类型读取时是,0000000100001010,也就是 256 + 10 = 266