结构体
一、基本概念:
结构体属于用户自己定义的数据类型,可以哟过来存储不同的数据类型
二、结构体定义:
语法:
struct 结构体名 { 结构体成员变量 };
三、结构体的使用:
在结构体的使用中,我们需要使用“ . ”来调用和修改结构体的成员变量
举个例子:
现在我们要统计一个学校中学生的姓名、性别、及其联系方式等信息。如果每个学生的三项信息都分别定义,那么在查找和修改对应学生的部分信息是会有些困难。我们就可以定义一个结构体student来包含每个学生的各种信息以方便我们调用和修改。
在这里我们要注意一下:结构体是一种数据类型,所以定义和使用后的花括号后都是要带有分号的,和if等语句不同
如图,这样以后我们就可以像使用其他数据类型一样自定义结构体变量了
比如我们要录入学生小明的相关信息,我们就可以这样使用结构体student
结构体数组
一、作用:
将自定义的结构体放到数组中方便维护
二、语法:
struct 结构体名 数组名[元素个数] = { {} , {} , {} ... ...};
结构体指针
使用:
在使用指针访问结构体的成员变量时,需要借助“->”来进行访问
eg:
struct student
{
string name;
}s1;
我们定义了学生s1,如果我们要用指针访问s1的姓名name:
student* p = &s1;
p -> name;
这样我们便访问到了学生s1的姓名
结构体案例——毕设名单整理
案例描述:
代码实现:
首先我们先定义老师和学生的对应的结构体
然后我们来定义一个函数,用于给老师姓名及其所带学生的各项成员赋值
这里我们先给变量赋一个相同部分,如“Teacher_”,然后再通过遍历含有“ABCDE”的字符串为变量赋值完整
然后我们再主函数中定义一个结构体数组并调用函数为数组赋值,并完成输出
运行后输出结果如下: