A-A+
有以下程序: #include <stdio.h> union pw { int i; ch
问题详情
有以下程序: #include <stdio.h> union pw { int i; char ch[2]; } a; main() { a.ch[0]=13; a.ch[1]=0; printf("%dn",a.i); } 程序的输出结果是(注意:ch[0]在低字节,ch[1]在高字节)()。
A.13
B.14
C.208
D.209请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:A
解析:根据共用体的定义可知:共用体a的成员i和成员ch[2]共用同一段内存空间,所以,当程序给a.ch[0]和a.ch[1]赋值后,实际上,共用体成员i的值就确定为13了,所以打印输出的结果应当为13。