为以下程序选择最佳语句:
null
#include "stdio.h" int main() { struct { int i; char c;} myVar = {.c = 'A' ,.i = 100}; printf ( "%d %c" ,myVar.i, myVar.c); return 0; } |
(A) 编译错误,因为结构类型(包含两个不同类型的字段,即int和char)与该结构类型的myVar定义一起被提及。 (B) 由于myVar初始化的语法不正确,导致编译错误。基本上是操作员的成员(即dot.)已在没有myVar的情况下使用。 (C) 不仅B的编译错误,而且myVar中字段的顺序错误,即先初始化字段c,然后初始化字段i。 (D) 没有编译错误,它将打印100 A。 答复: (D) 说明: 根据C语言,完全数据类型变量的初始化可以在定义时完成。此外,根据C,可以使用字段名和不带myVar的点运算符无序初始化结构字段/成员。正确答案是D。 这个问题的小测验
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END