首页题目详情
下面哪项是正确的结构体定义与初始化方式?

A.struct Student { int id; char name[20]; }; struct Student s = {101};
B.struct Student { int id; char name[20]; }; struct Student s; s = {101, "Alice"};
C.struct Student s = {id: 101, name: "Alice"};
D.struct Student s = {101, "Alice"}; s.id = 102;
优质解答
答案
D
解析
在C语言中,结构体初始化必须使用位置或名称的方式,但不能同时使用。选项A和B在初始化时没有正确使用大括号或中断符。选项C是使用了类似C++的语法,不符合C语言规范。因此D是正确的。
理论知识部分单选题中等AI生成