知识回顾1.复杂结构2.结构数组3.结构与函数
知 识 回 顾 1.复杂结构 2.结构数组 3.结构与函数
主要内容BB联合9.8>枚举小结自的要求复习思考题上机与编程实践独立作业
主 要 内 容 9.7 联合 9.8 枚举 目的要求 复习思考题 上机与编程实践 独立作业 小 结
9.7 联合1.联合概述(1)联合是类似于结构的数据类型(2)联合的声明、变量定义、成员访问与结构完全类似typedefunionnum116706short num,char chAry[2];chAry[1]chAry[0]1 SH_CH2;BASH_CH2data=16706;图9-20联合声明、定义变量和初始化
9.7 联合 1.联合概述 (1)联合是类似于结构的数据类型 (2)联合的声明、变量定义、成员访问与结构完全类似 图9-20 联合声明、定义变量和初始化 typedef union { short num; char chAry[2]; } SH_CH2; SH_CH2 data = 16706; 16706 A num B chAry[1] chAry[0]
下面的操作也是合法的:/*定义了SHCH2型的联合指针P并指向了data*/SH CH2*p=&data,/*通过指针访问联合成员num*/p->nump->chAry[o]/*通过指针访问联合成员chAry[o]*现场编程
现场编程
2.几点说明(1)联合采用了覆盖技术准许不同类型数据可以相互覆盖(2)联合变量与联合中最大成员所占空间大小相同(3)采用联合的自的是为了节省内存(4)采用联合的目的是为了节省内存(5)只可对某个成员赋值,不能对联合变量整体赋值如:“”“B”:*错误的初始化方法*SH_CH2data=[100./*正确的初始化方法*/data.num=100;
(5)只可对某个成员赋值, 不能对联合变量整体赋值 (2)联合变量与联合中最大成员所占空间大小相同 (1)联合采用了覆盖技术准许不同类型数据可以相互覆盖 (3)采用联合的目的是为了节省内存 2.几点说明 (4)采用联合的目的是为了节省内存