struct 结构体
union 共用体
enum 枚举
一.结构体:
1.结构体类型的定义
struct 结构体名
{
数据类型1 成员变量1;
数据类型2 成员变量2;
数据类型3 成员变量3;
..
};
2.结构体变量的定义
数据类型 变量名;
数据类型 *指针变量名;
3.结构体变量的初始化
(1)全部初始化
struct student s={"zhangsan", 'm', 19, 100};
(2)局部初始化:
struct student stu = {
.name = "lisi",
.score = 90,
};
4.结构体成员变量的访问
. :结构体变量类型访问成员变量使用 .
-> :结构体指针类型访 问成员变量使用 ->
整体类型由成员变量类型决定
5.结构体的存储
内存对齐:
char 按照1字节对齐
short 按照2字节对齐
int 按照4字节对齐
double 按照4字节对齐
结构体整体的大小必须为最大基本类型长度的整数倍
6.结构体作为函数参数
7.结构体数组
struct student s[5];
二.共用体
共用体所有成员变量共享同一片空间
内存大小端:
内存小端:
内存低地址存放低数据位
内存高地址存放高数据位
内存大端:
内存低地址存放高数据位
内存高地址存放低数据位
三.枚举
enum 枚举类型名
{
枚举常量1,
枚举常量2,
枚举常量3,
…
};
注:1.枚举类型一般说明将来变量的值在给定的常量中选择其一作为它的值
2.枚举常量的值总是前一个枚举常量的值+1,第一个默认为0值
3.枚举常量默认为int类型,可以直接在程序中使用