C语言结构体数组的定义是什么?

结构数组就是具有相同结构类型的变量集合。

假如要定义一个班级40个同学的姓名、性别、年龄和住址, 可以定义成一个结构数组。如下所示:

struct{ char name[8]; char sex[2]; int age; char addr[40]; }student[40];  也可定义为:

struct string{ char name[8]; char sex[2]; int age; char addr[40]; }; struct string student[40];  需要指出的是结构数组成员的访问是以数组元素为结构变量的, 其形式为:

结构数组元素.成员名

例如:

student[0].name student[30].age  实际上结构数组相当于一个二维构造, 第一维是结构数组元素, 每个元素是

一个结构变量, 第二维是结构成员。

注意: 结构数组的成员也可以是数组变量。

例如:

struct a { int m[3][5]; float f; char s[20]; }y[4];  为了访问结构a中结构变量y[2]的这个变量, 可写成

y[2].m[1][4]