本文介绍了C语言中结构体的基本概念和使用方法。主要内容包括:1.结构体声明语法和成员访问方式;2.结构体内存对齐规则及其对空间利用的影响;3.通过示例展示了不同成员排列顺序对结构体大小的影响;4.结构体位段的使用方法及其与普通结构体的区别;5.位段的内存分配特点和使用注意事项,包括其不跨平台的特性和内存地址限制。文章强调结构体传址调用的优势,并指出合理排列成员变量可以优化内存空间利用。
结构体的声明
结构体属于自定义类型 C语言中有结构体 枚举 联合体
.访问成员变量
间接访问->
想使用匿名对象 需要重名 使用里面的成员变量 直接引用
结构自引用
结构体内存对⻬
对齐规则
1一个成员变量到起始地址的偏离量为0
2其他成员变量要对齐(对齐数)的整数倍的地址处
3整个结构体的最大对齐数等于 成员变量的最大对齐数
4重叠结构体
对⻬数 = 编译器默认的⼀个对⻬数 与 该成员变量⼤⼩的较⼩值。
vs默认为8