下列程序的运行结果是【 】。 main() { union EXAMPLE { struct { int x;int y;}in; int a;

admin2013-02-23  30

问题 下列程序的运行结果是【  】。
   main()
   { union EXAMPLE
         { struct
               { int x;int y;}in;
                  int a;
                  int b;
                } e:
     e.a=1;e.b=2;
     e.in.x=e.a*e.b;
     e.in.y=e.a+e.b;
     printf("%d,%d\n",e.in.x,e.in.y);
   }

选项

答案4,8

解析 C语言规定,共用体中各个成员变量在内存中占用同一段内存单元,即e.in.x和e.a、e.b占用同一段内存单元,由于e.in.x和e.a、e.b占用的是同、段内存单元,所以程序最后的打印结果为“4,8”。
转载请注明原文地址:https://jikaoti.com/ti/xyn0FFFM
0

最新回复(0)