结构中的结构
结构数组
-
结构数组的声明与访问和其他数组相似.
-
结构数组中每个成员都是一个结构.
-
使用
变量名[下标].成员名
来访问结构数组中结构的成员.
struct info {
char[5] name;
int age;
int id;
}
struct info StudentList[3] = {
{"张三",18,20221001}
{"李四",18,20221002}
{"王麻子",19,20221003}
}
printf("%s%d%d",StudentList[0].name,StudentList[0].age,StudentList[0].id);
结构中的结构
结构的成员也可以是一个变量
声明方法
struct sa {
int i;
...
}
struct sb {
struct sa a;
...
}
struct sb test{{1,...},...};
访问方法
printf("%d\n",test.a.i);
注意事项
如果有一个结构指针,可以使用 ->
来访问其成员。但成员如果是结构,访问结构成员的成员就不能用用 ->
了,因为 ->
是操作指针的运算符,不能操作结构变量.
struct sb *ptest = &test;
[√] ptest->a
[×] ptest->a->i
[√] ptest->a.i
结构中的结构的数组
😡😡😡套娃是吧,再套就不礼貌了