美文网首页
C语言中的枚举类型

C语言中的枚举类型

作者: 兰帕德 | 来源:发表于2022-01-01 21:57 被阅读0次

如果一个变量只有几种可能的值,则可以定义为枚举类型。所谓“枚举”是指将变量的值一一列举出来,变量的值只限于列举出来的值的范围内。
声明枚举类型用enum开头。例如:

enum weekday{sun, mon, tue, wed, thu, fri, sat};

声明了一个枚举类型enum weekday,则可以用此类型来定义变量。例如:

enum weekday workday, week_end; // 定义了两个枚举变量
weekday = mon;
week_end = sun;

也可以直接定义枚举变量,例如:

enum {sun, mon, tue, wed, thu, fri, sat} workday, week_end;

其中sun、mon、…、sat称为枚举元素枚举常量
说明:
1、在C编译中,对枚举元素按常量处理,故称为枚举常量。它们不是变量,不能进行赋值。例如sun = 7; mon = 1;是错误的。
2、枚举元素作为常量,是有值的。C语言编译按定义时的顺序使它们的值为0、1、2……也可以在定义时,指定枚举元素的值,例如:

enum weekday{sun=7, mon=1, tue, wed, thu, fri, sat} workday, ween_end;
// 定义sun=7, mon=1,以后顺序加1,sat=6

3、枚举值可以用来作判断比较。例如:

if(workday == mon)…
if(workday > sun)…

4、一个证书不能直接赋值给一个枚举变量。例如workday=1;是错误的。它们属于不同的类型。应该先进性强制类型转换,然后才能赋值。例如:

workday = (eunm weekday)2;

相当于将序号为2的枚举元素赋值给workday,相当于

workday = tue;

相关文章

  • 关于枚举

    C语言中的另一种数据类型---枚举类型。枚举类型在iOS中也是很常用的 枚举的概念 枚举是C语言中的一种基本数据类...

  • Objective-C的三种枚举

    在Objective-C中可以通过三种方式来定义一个枚举类型。 一、C语言中的枚举 C语言中的枚举形如: 二、C+...

  • 01.C语言中的枚举类型

    枚举类型 c语言中,如果想表示符号常亮而不是字面值,除了#define...外,还可以使用枚举类型枚举类型的定义

  • C语言中的枚举(enum)类型

    C语言中的枚举(enum)类型 枚举变量是C语言中的一种数据结构,在C++和Java等衍生语言(用词好像不太恰当)...

  • iOS 用枚举来表示状态机、状态码

    系统框架频繁用到C语言中的枚举类型,开发者常常容易忽略枚举的使用,苹果就多用 2的幂 来表示枚举类型。 用枚举来表...

  • C语言中的枚举类型

    如果一个变量只有几种可能的值,则可以定义为枚举类型。所谓“枚举”是指将变量的值一一列举出来,变量的值只限于列举出来...

  • Swift和Objective-C中的类型

    iOS开发中使用的类型 Foundation中的类型可以分为三类: NSInteger等,在C语言中,枚举类型、字...

  • enum class

    强类型枚举 枚举:分门别类与数值的名字 允许匿名枚举的出现容易出现以下问题: C语言中枚举是 常量数值的 别名,因...

  • 10-枚举和结构体

    一、枚举 C#语言中提供了枚举类型,枚举是为具有一组特定值的变量特别设计的一种自定义数据类型,是一种值类型,其成员...

  • C语言中的自定义类型:结构体、枚举、联合

    我们知道c语言基本数据类型有: 本篇将重点介绍C语言中的自定义类型:结构体、枚举、联合 undefined结构体 ...

网友评论

      本文标题:C语言中的枚举类型

      本文链接:https://www.haomeiwen.com/subject/ygraqrtx.html