第19章共用体、枚举和位域.ppt
《第19章共用体、枚举和位域.ppt》由会员分享,可在线阅读,更多相关《第19章共用体、枚举和位域.ppt(13页珍藏版)》请在三一文库上搜索。
1、第19章 共用体、枚举和位域,杨章伟 e-mail:,课程内容安排,共用体 枚举 位域 小结 习题,共用体,继第18章介绍了结构体之后,本章将介绍另外三种高级数据类型:共用体、枚举和位域。这三种数据类型与结构体一样,都是多个数据单元结合而成的复杂数据单元,因此,它们可以用来描述更为复杂的数据形式。这三种数据类型的适用范围各有不同 。 共用体(union)是C语言中另一种高级数据结构,它可以使几个不同成员共享同一块内存。合理地使用共用体可以节省内存空间,还可以简化多种复杂数据的处理。,声明共用体类型,在程序中,有时为了节约内存空间,可以使用共用体来使多个变量共享一块内存。共用体与结构体类似,可以
2、含有多个成员,其声明形式如下: union 共用体名 数据类型名 成员名1; 数据类型名 成员名2; 数据类型名 成员名3; ; 但与结构体结构不同的是,共用体的所有成员共享同一块内存,而结构体的每个成员都有自己的内存空间。一个共用体类型的字节长度为占用内存空间最多的成员变量的字节长度。,定义共用体变量,共有体变量的定义方法与结构体变量类似。可以先声明一个共用体类型,再使用该共用体类型来定义共用体变量;也可以直接定义共用体变量;还可以使用typedef来定义一个共用体类型别名,再使用共有体别名来定义共有体变量。仅以第三种形式为例,如下所示。 typedef union _data_u_t in
3、t a; char b; long long c; data_u_t; data_u_t v;,枚举,枚举类型是C语言中另一种高级类型。在前面已经学习了可以使用const常量和具名常量来代替程序中出现的常量数值,枚举类型也可以用来定义常量数值。,声明枚举类型,C语言使用枚举类型为这种情况下的常量替代提供了更好的解决方案。枚举类型是一组相关数据的集合,它可以在定义常量的同时,将这些常量结合在一个集合中加强彼此的关系。枚举类型的声明与结构体和共用体的声明略有不同,其形式如下: enum 枚举类型名 枚举成员1; 枚举成员2; 枚举成员3; 其中的枚举成员都为int型,如果没有显式赋值,系统会自动将
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 19 共用 枚举
链接地址:https://www.31doc.com/p-3422343.html