能定义s为合法的结构体变量的是()。 A. typedef struct abc { double a; char b[10]; }s; B. struct abc { double a; char b[10]; }s; C. struct abc { double a; char b[10]; }; abc s; D. typedef abc { double a; char b[10]; }; abc s;
时间: 2024-03-31 14:37:51 浏览: 91
c++0(1).pdf
能定义s为合法的结构体变量的选项是 B 和 C。
B选项定义了一个结构体类型abc,并直接定义了一个名为s的结构体变量。
C选项同样定义了一个结构体类型abc,但是在定义结构体变量时没有直接指定类型名,而是使用了结构体类型名abc作为变量类型,并定义了一个名为s的结构体变量。
A选项中的typedef关键字只是给结构体类型abc起了一个别名s,并没有定义结构体变量。
D选项中的typedef语句定义了一个结构体类型abc,并将其起了一个别名s,但是在定义结构体变量时缺少了关键字struct。
阅读全文