网站大量收购闲置独家精品文档,联系QQ:2885784924

C的语言枚举基础教学.docx

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
注:以下全部代码的执行环境为VC++ 6.0在程序中,可能需要为某些整数定义一个别名,我们可以利用预处理指令#define来完成这项工作,您的代码可能是:#define?MON??1#define?TUE?? 2#define?WED??3#define?THU?? 4#define?FRI??? 5#define?SAT?? 6#define?SUN?? 7?在此,我们定义一种新的数据类型,希望它能完成同样的工作。这种新的数据类型叫枚举型。?1. 定义一种新的数据类型 - 枚举型?以下代码定义了这种新的数据类型 - 枚举型enum?DAY{??????MON=1,?TUE,?WED,?THU,?FRI,?SAT,?SUN};?(1) 枚举型是一个集合,集合中的元素(枚举成员)是一些命名的整型常量,元素之间用逗号,隔开。(2)?DAY是一个标识符,可以看成这个集合的名字,是一个可选项,即是可有可无的项。(3) 第一个枚举成员的默认值为整型的0,后续枚举成员的值在前一个成员上加1。(4) 可以人为设定枚举成员的值,从而自定义某个范围内的整数。(5) 枚举型是预处理指令#define的替代。(6) 类型定义以分号;结束。?2. 使用枚举类型对变量进行声明新的数据类型定义完成后,它就可以使用了。我们已经见过最基本的数据类型,如:整型int, 单精度浮点型float, 双精度浮点型double, 字符型char, 短整型short等等。用这些基本数据类型声明变量通常是这样:char???? a;?//变量a的类型均为字符型charchar???? letter;int??????? x,?????????? y,?????????? z;?//变量x,y和z的类型均为整型intint?????? number;double? m,?n;double? result;?//变量result的类型为双精度浮点型double?既然枚举也是一种数据类型,那么它和基本数据类型一样也可以对变量进行声明。方法一:枚举类型的定义和变量的声明分开enum?DAY{??????MON=1,?TUE,?WED,?THU,?FRI,?SAT,?SUN};?enum?DAY?yesterday;enum?DAY?today;enum?DAY?tomorrow;?//变量tomorrow的类型为枚举型enum?DAYenum?DAY?good_day,?bad_day;?//变量good_day和bad_day的类型均为枚举型enum?DAY?方法二:类型定义与变量声明同时进行:enum?//跟第一个定义不同的是,此处的标号DAY省略,这是允许的。{????saturday,????sunday?=?0,????monday,????tuesday,????wednesday,????thursday,????friday}?workday;?//变量workday的类型为枚举型enum?DAY?enum?week?{?Mon=1,?Tue,?Wed,?Thu,?Fri?Sat,?Sun}?days;?//变量days的类型为枚举型enum?week?enum?BOOLEAN?{?false,?true?}?end_flag,?match_flag;?//定义枚举类型并声明了两个枚举型变量?方法三:用typedef关键字将枚举类型定义成别名,并利用该别名进行变量声明:typedef?enum?workday{????saturday,????sunday?=?0,????monday,????tuesday,????wednesday,????thursday,????friday}?workday;?//此处的workday为枚举型enum?workday的别名?workday?today,?tomorrow;?//变量today和tomorrow的类型为枚举型workday,也即enum?workday?enum workday中的workday可以省略:typedef?enum{????saturday,????sunday?=?0,????monday,????tuesday,????wednesday,????thursday,????friday}?workday;?//此处的workday为枚举型enum?workday的别名workday?today,?tomorrow;?//变量today和tomorrow的类型为枚举型workday,也即enum?workday?也可以用这种方式:typedef?enum?workday{????saturday,????sunday?=?0,????monday,????tuesday,????wednes

文档评论(0)

liwenhua00 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档