计算机类

b)main(){union{ /*定义一个联合*/int i;struct{ /*在联合中定义一个结构*/char first;char second;}half;}number;number.i=0x4241; /*联合成员赋值*/printf("%c%c\n", number.half.first,mumber.half.second);number.half.first='a'; /*联合中结构成员赋值*/number.half.second='b';printf("%x\n", number.i

题目

b)

main()

{

union{ /*定义一个联合*/

int i;

struct{ /*在联合中定义一个结构*/

char first;

char second;

}half;

}number;

number.i=0x4241; /*联合成员赋值*/

printf("%c%c\n", number.half.first,

mumber.half.second);

number.half.first='a'; /*联合中结构成员赋值

*/

number.half.second='b';

printf("%x\n", number.i);

getch();

}

参考答案和解析
正确答案:

 

AB (0x41 对应'A',是低位;Ox42 对应'B',
是高位)6261 (number.i 和number.half 共用一块地址空
间)

如果没有搜索结果,请直接 联系老师 获取答案。