- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第10讲结构体、共用体和枚举
* * * * * * * * * * * * 共用体的特点 共用体变量所占的内存空间大小于等于占用内存空间最大的成员的长度,如上面定义的a,b,c三个共用体变量分别占4个字节 同一内存单元在每一瞬时只能存放其中一种类型的成员;并非同时都起作用 起作用的成员是最后一次存放的成员 不能作为函数参数 共用体变量的地址和各成员的地址都是同一地址。如:aa a.i, a.f同一地址值 共用体变量的定义 在定义共用体类型的同时定义该种类型的变量 如上例中的变量a、b、c就是在定义union data类型的同时定义的共用体变量。 用已定义过的共用体数据类型定义共用体变量 格式是: union 共用体名称 变量名表; 如:union data mydata; 共用体变量的引用 共用体变量的使用方法基本同结构体变量的使用方法,并同时注意以下原则: 不能直接使用共用体变量,而只能使用共用体变量的成员,共用体变量取成员的运算符同结构体变量取成员的运算符,即用“.”。 如:对于上例定义的共用体变量a来说,可用以下方法引用其中的成员: a.i 引用共用体变量a中的整型变量i a.ch 引用共用体变量a中的整型变量ch a.f 引用共用体变量a中的整型边量f 共用体的应用 姓名name 性别 sex 年龄 age 婚姻状况 婚姻状况 标记 未婚 已婚 离婚 配 偶 子 女 年 月 日 struct person { char name[20]; char sex; int age; union { int single; struct { char spouseName[20]; int child; }married; struct date divorcedDay; }marital; int marryFlag; }; 枚举类型及其定义方法 枚举 如果一个变量只有几种可能的取值时,就可以把它定义为枚举类型 所谓枚举就是指将某一变量所有可能的取值一一列举出来 枚举类型的定义格式是: enum 枚举类型名{枚举元素表}枚举变量名; 例子: enum weekday{sun,mon,tue, wed,thu,fri,sat} workday; 枚举变量的定义 在定义枚举类型的同时定义该种类型的变量 如上例中的变量workday就是在定义enum weekday类型的同时定义的枚举变量。 用已定义过的枚举数据类型,定义枚举变量。 enum 枚举名称 变量名表; 如:可以利用已有的枚举类型weekday定义变量enum weekday myworkday; 枚举变量的使用方法 (1)由于枚举类型中列出了该种类型变量的所有可能取值,所以可以将某一枚举元素赋给该种类型的变量, 如:workday=mon;是可以的。 (2)在c++中,对枚举元素作常量处理,所以枚举元素不是变量,不能对它们赋值, 如:sun=0;mon=1;不对。 枚举变量的使用方法 (3)枚举元素作为常量,它们是有值的,C++语言编译系统按定义时的顺序使它们的值为0,1,2…… (4)当需要改变枚举元素的默认值时,可以在定义枚举类型的同时在枚举元素的后面用“枚举元素=值”的格式改变, (3) enum weekday{sun,mon,tue,wen,thu,fri,sat}workday; 中,枚举元素sun的值为0,mon元素的值为1,……。 如果有赋值语句workday=thu;则说明变量workday的值为4 (4)如: enum weekday {sun=7,mon=1,tue,wed,thu,fri,sat}; 类型定义typedef的使用 在C++语言中,除了可以直接用C++提供的标准类型名int,char,floot,double,long去定义类型外,还可以用typedef定义新的类型名代替已有的类型名。 例子: Typedef int INTEGER; //为int类型定义一个新的名称INTEGER typedef float REAL; //为float类型定义一个新的名称REAL INTEGER a,b; //定义变量a,b为int类型,等价于int a,b; REAL c; //定义变量c为float类型,等价于float c; 类型定义typedef的使用 例子: typedef struct student {int num; char name[10]; int score; }S
您可能关注的文档
最近下载
- 八年级学生数学典型错题的成因及教学对策研究.pdf VIP
- G100G150E150激光器中文用户使用指南.pdf VIP
- 《安全系统工程(第3版)》全套教学课件.pptx
- 具身智能在社会治理中的应用与挑战.docx VIP
- 北师大版九年级数学上册特殊平行四边形《单元知识梳理复习题》示范公开课教学课件.pptx VIP
- 北师大版九年级数学上册特殊平行四边形《知识梳理复习题》示范公开课教学课件.pptx VIP
- 武冷双机双级螺杆式压缩机使用说明书.pdf VIP
- 《习作:______让生活更美好》课件.pptx VIP
- 《江苏省 JGT046-2016 岩棉外墙外保温系统应用技术规程》.pdf
- 新《公司法》修订要点解读.pptx VIP
原创力文档


文档评论(0)