结构体
将不同类型的数据组合为一个整体,谷歌编程规范要求首字母大写,大括号后有分号
结构体的声明允许嵌套
结构体的初始化顺序与声明顺序一致,若进行部分初始化,剩下的部分默认为0
结构体存储具有有序性
指针指向结构体变量
内存对齐
1、默认按CPU位数对齐,最终大小为8的整数倍
2、在结构体成员中找到最长的成员,最终按该成员的长度对齐
3、按声明顺序依次保存,保存偏移量 % sizeof() == 0
共用体
共用体的定义
共用体中所有成员地址相同,内容相互覆盖
枚举
枚举类型的定义
枚举的类型要与整型相兼容
typedefine
位运算
& 按位与:将两数二进制展开,按位进行与运算;功能:指定位清零,要求操作数与整型相兼容
| 按位或:将两数二进制展开,按位进行或运算;功能:指定位置一
^ 按位异或:同0异1;功能:指定位反转
~ 取反
<< 左移:将一个数二进制展开,左移几位就删去前几位,并在后面补上对应个数的0