十三、
共用体的定义
共用体类型的定义和结构体类型的定义可以说是孪生兄弟,其定义方式最大的区别就是关键字的不同。
结构体的定义是需要使用关键字 struct,而共用体则是需要另一个关键字 union 来进行定义。
共用体的使用
共用体的变量可以在定义类型的时候进行声明,或者在定义后声明。
和结构体一样的,在定义后声明变量需要带上相应的关键字,才表示是一个完整共用体类型。除非使用了 typedef 自定义了数据类型。
A. 初始化
结构体可以在定义结构时或者定义后,声明变量并进行初始化赋值。
共用体只能声明变量后,通过引用成员来进行赋值。
B. 内存大小
结构体所占的内存大小,大等于所有定义的成员类型所占内存大小的总和(大于的原因,是因为成员之间可能存在缝隙)。
查看15道真题和解析