为以下程序选择最佳语句:
null
#include "stdio.h" int main() { union { int i1; int i2;} myVar = {.i2 =100}; printf ( "%d %d" ,myVar.i1, myVar.i2); return 0; } |
(A) 由于初始化语法不正确而导致编译错误。 (B) 没有编译错误,它将打印“0 100”。 (C) 没有编译错误,它会打印“100”。 答复: (C) 说明: 由于union的字段/成员共享相同的内存,因此i1和i2都指向相同的位置。此外,由于i1和i2都是同一类型,初始化其中一个也会隐式初始化另一个。所以答案是C。 这个问题的小测验
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END