第八章 结构体
1.为什么定义结构体?
当出现不同类型的数据,无法用数组表达(数组里的元素都是相同类型的)
2.如何定义结构体?(结构体定义在main函数的外面)
struct 结构体名{ //结构名首字母大写(好看) struct Student{
数据类型 变量名; char name[32];
......... ..........
数据类型 变量名; int age;
} ; //分号不可少 };
3.结构体与数组
4.结构体指针
指针就是地址,指针变量是存放地址的变量
结构体也是变量,访问的方式:1.变量名 2.地址
若想通过地址访问结构体,就需要用结构体指针
5.
6.共用体/联合体
共用体元素共享空间,空间大小由最大类型确定,共用体赋值会导致覆盖
a)共用体声明
union TestU{
int num;
char str;
double data;
};
b)共用体与结构体区别
共用体的大小由内部最大类型决定,内部每个元素共用地址
c)共用体元素打印
打印元素需要分开赋值,否则数据会被覆盖
d)共用体的应用
7.枚举类型
8.typedef 关键字