枚举型的枚举类型

 我来答
萌小殇9300
2016-05-31 · 超过62用户采纳过TA的回答
知道答主
回答量:173
采纳率:75%
帮助的人:55.4万
展开全部

通过预定义列出所有值的标识符来定义一个有序集合,这些值的次序和枚举类型说明中的标识符的次序是一致的。枚举类型的形式:(标识符1,……,标识符n)
例如: type daystype=(sunday,monday,tuesday,wednesday,thursday,friday,saturday)
枚举元素只能是标识符,而不能是数值常量或字符常量。例如以下的定义是错误的:
type daystype=('sun','mon','tue','wed','thu','fri','sat')
枚举元素是标识符,不要把作为枚举元素的标识符视作变量名,它不能被赋值。同一个枚举元素不能出现在两个或两个以上的枚举类型定义中。例如以下的定义是错误的:
type daytype1=(monday,tuesday);
daytype2=(monday,wednesday);
可以将枚举类型的定义和变量的定义结合在一起。例如:var a:(monday,tuesday,sunday)
枚举类型属于顺序类型。根据定义类型时各枚举元素的排列顺序确定它们的序列,序列号从0开始
例如:已经定义daystype
ord(sunday)=0,succ(sunday)=monday,pred(friday)=thursday
但是枚举类型中的第一个元素没有前趋,最后一个元素没有后继。Turbo Pascal不允许直接读写枚举值,所以枚举值的输出常用case语句间接的输出。枚举值的输入,则要一一判断读入字符是否是枚举类型的标识符。若是才能赋给枚举变量,否则就会出错。
例如:枚举值的输出
case day of
sunday:write('sunday');
monday:write('monday');
tuesday:write('tuesday');
wednesday:write('wednesday');
thursday:write('thursday');
friday:write('friday');
saturday:write('saturday');
end;

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式