第18讲 共同体位运算与枚举类型.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第18讲 共同体位运算与枚举类型

第22讲 共同体与枚举类型 一、共同体 二、枚举类型 三、类型定义 一、共同体类型与共同体变量 1、共同体的概念 回顾数组与结构体:数组是相同类型的多个变量的组合,结构体是不同类型的多个变量的组合。 数组和结构体中的变量各自占有不同的存储空间,变量之间互不影响。 数组和结构体中的变量的值可以变化,但是它们的类型不能改变。 共同体是将不同类型的数据存放在同一存储位置。因此,任意时刻,存放在共同体中只有一种数据值,而不能同时存放多种数据。 2、共同体类型的定义 1)共同体类型的定义的格式 union 共同体类型名 { 成员说明列表 }; 2)例如 union data { int i; char ch; float f; }; 3、共同体变量的定义 与结构体变量的定义类似,与结构体变量的定义有三种方法。 1)先定义共同体类型,再定义共同体类型变量 union data // 类型定义 { int i ; char ch ; float f ; }; union data a,b,c; // 变量定义 2)在定义共同体类型的同时定义变量 union data { int i ; char ch ; float f ; } a,b,c; 3)在定义共同体定义变量时,省略类型名 union { int i ; char ch ; float f ; } a,b,c; 4、共同体变量的引用 在定义共用体变量之后,就可以引用该共用体变量的某个成员。引用格式与结构体类似: 共同体变量名.成员名 例如: union data { int i ; char ch ; float f ; } a, b; a.i = 1024; b.f = 0.1234 #include stdio.h union data { int i; char c; float f; }; void main() { union data a; a.i = 321; printf(%c\n,a.c); } 运行结果: A 写出下面程序的执行结果: 原理: 二、枚举类型 1、枚举类型的概念 在实际应用中,有的变量只有几种可能的取值。例如:7种颜色、12个月份的名称。 枚举是一个被命名的整型常数的集合。 例如: enum colorname { red, yellow, blue, white, black }; 2、枚举类型的定义格式 enum 枚举类型名 { 标识符1,标识符2,……… 标识符n }; 例如:enum colorname color1; 3、枚举类型变量的定义格式 enum 枚举类型名 变量名; 4、几点说明 1) enum是关键字,标识枚举类型,定义枚举类型必须以enum开头。 2) 在定义枚举类型时花括号中的名字称为枚举元素或枚举常量 。枚举元素不是变量,不能改变其值,枚举常量可以进行比较。 3) 一个枚举变量的值只能是这几个枚举常量之一,可以将枚举常量赋给一个枚举变量。 4) 可以在定义类型时对枚举常量初始化。 三、类型定义 1、类型定义的概念 在使用标准类型定义变量时,可只写标准类型名指明变量的数据类型。 而在使用结构体、共同体、枚举类型定义变量时,则必须加上关键字struct、union和enum。 C语言提供typedef来对类型进行命名。 在使用了typedef 对某种类型命名后,就可以不要使用关键字struct、union和enum了。 2、结构体类型的定义示例 对于下面的结构体类型定义: typedef struct student { char name[10]; int yw, sx, yy; } STUDENT; 则可以使用下面二种形式来定义结构体变量: STUDENT st1, st2; struct stud

文档评论(0)

skvdnd51 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档