结构中的结构

结构数组

  • 结构数组的声明与访问和其他数组相似.

  • 结构数组中每个成员都是一个结构.

  • 使用 变量名[下标].成员名 来访问结构数组中结构的成员.

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

结构中的结构的数组

😡😡😡套娃是吧,再套就不礼貌了

最后修改:2023 年 04 月 28 日
如果觉得我的文章对你有用,请随意赞赏