A-A+
当执行下.面的程序时 其输出结果为 ______。 union st { int a; ch
问题详情
当执行下.面的程序时,其输出结果为 ______。 union st { int a; char b; } main() { union st s; char* p=(char *)&s; s.a=0x3132; s.b=0x33; printf("%c",*p); }
A.1
B.2
C.3
D.不确定请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:C
解析:共用体类型结构的特点是使几个不同的变量共占同一段内存,但在每一瞬时只能存放其中一种,而不是同时存放几种,共用体变量中起作用的成员是最后一次存放的成员,在存入一个新的成员后原有的成员就失去作用。因此本题起作用的是成员b的值,所以程序打印输出3。