嵌入式学习笔记C语言阶段--14可变长数组
1. 数组问题
基本数组常见问题
数组容量一旦确定无法修改。
数组的存储类型无法修改。
数组不得作为返回值类型。
设计结构体类型来描述数组,增强数组的功能
2. 可变长数组结构设计
目标存储类型为 Student *,数组中的每一个元素都是一个学生结构体指针。
typedef struct student_array
{ /*elements 在这里可以认为是一个指针数组,存储类型为Student * 学生结构体指针,因为当前存储数据的内存空间在内存的堆区,需要通过指针访问。相当于通过当前 elements 指针访问对应的内存空间,得到的是一个 Student * 指针,所以当前 elements 类型是 Student ** 二级指针*/Student ** elements;/*当前底层 elements 数组的容量*/size_t capacity;/*当前底层 elements 有效元素个数*/size_t size;
} Student_Array;