c语言数组(C语言结构体数组的定义)

2022-08-27 10:50:18
摘要:  c语言数组(C语言结构体数组的定义)...

所谓结构体数组,是指数组中的每个元素都是一个结构体。在实际应用中,结构体数组常被用来表示一个拥有相同数据结构的群体,比如一个班的学生、一个车间的职工等。

定义结构体数组和定义结构体变量的方式类似,请看下面的例子:

struct stu{

char *name; //姓名

int num; //学号

int age; //年龄

char group; //所在小组

float score; //成绩

}class[5];

表示一个班级有5个学生。

再如:

假如要定义一个班级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

实际上结构数组相当于一个二维构造, 第一维是结构数组元素, 每个元素是

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

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