结构体数组定义和使用
结构体数组:
1. 什么是结构体数组?
    结构体数组是指由结构体数据类型的变量组成的数组,它可以实现一个结构体类型的多维数组。数组中的每一个元素都是结构体变量,并且所有的结构体元素的基本数据类型一定是相同的,结构体数组可以存储相关的信息,以做到有序但又灵活地组织数据。
2. 结构体数组的定义
    结构体数组定义很简单,即在定义结构体变量时增加一个方括号指示其是一个数组。例如:
    struct student    //定义结构体
    {
      char name[20];
数组定义时初始化
      int age;
      float score;
    } stu_arr[3];
    其中,stu_arr[3]表示时结构体数组,它由3个学生结构体变量组成,每一个学生结构体变量有3个属性,名字,年龄和成绩。
3. 结构体数组的使用
    (1)结构体数组的初始化
    与普通数组一样,可以使用一下方法初始化:
    a. 静态初始化,如:
    struct student stu_arr[3] = {
          {“Adam”, 20, 79.9},
          {“Joe”,22,60.0},
          {“Marry”,18,85.5}
    };
    b. 动态初始化,可以逐个给每个变量赋值。
    (2)结构体数组的访问
    结构体数组可以像普通数组一样,使用下标符来访问数组元素,如stu_arr[2].name表示数组第三个元素的name属性;也可以使用指针运算访问,如:
    (struct student *)p;
    p->name;  //表示获取name属性
4. 结构体数组的用途
    结构体数组一般用于存储同类型、类似属性的多条记录,它可以方便地访问大量数据。
例如,在学生成绩管理系统中可以使用结构体数组来存储每个学生的基本信息和成绩,这样可以很容易地对学生成绩进行统计和排序。
    结构体数组也可以用于形成图形,例如,可以使用结构体数组中的元素来描述人脸的各个特征,包括眼睛的位置,嘴巴的位置等,然后使用绘图实现形成一张人脸图。 
5. 结构体数组的优点
    (1)对于非线性的多项数据的存储,结构体比普通数组要容易得多。
    (2) 结构体数组可以更有效地组织和定位多项数据,提高操作效率。 
    (3) 结构体数组更易于维护存储在内存中的数据,而不需要考虑内存单元之间的关系。
    (4) 结构体数组更加灵活,可以根据需要自由扩展。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。