1. 类型的定义:
struct 类型名
{
数据类型1 成员变量1;
数据类型2 成员变量2;
...
};
其中,数据类型可以是基本数据类型、数组、构造的数据类型;
2. 变量的定义:
数据类型 变量名;
struct datetime dt;
3. 结构体元素的访问:
. 结构体变量类型访问成员变量
-> 结构体指针类型访问成员变量
最终类型是由成员变量的类型决定的;
4. 结构体的初始化:
1. 全部初始化:
struct studen s = {"zhangsan", 'm', 100};
2. 局部初始化:未给定初值的为0值
struct student s = {
.name = "zhangsan",
.age = 19,
};
3. 清零:
memset(&s, 0, sizeof(s));
bzero(s, sizeof(s));
5. 结构体的存储:
内存对齐:
1. 结构体成员变量只能存放在内存地址为自身基本类型长度整数倍的内存单元中;
2. 结构体大小必须为最大成员变量类型的整数倍;
6. 结构体作为函数参数:
7. 结构体数组: