首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C语言 | 枚举概述

C语言枚举简述 在C语言中,如果一个变量只有几种可能的,则可以定义为枚举类型,所谓“枚举”就是指把可能的一一列举出来,变量的只限于列举出来的的范围内。...枚举变量和其他数值型量不同,它们的只限于花括号中指定的之一,枚举常量是由程序设计者命名的,用什么名字代表什么含义,完全由程序员根据自己的需要而定,并在程序中作相应处理。...一般形式 enum[枚举名]{枚举元素列表} 其中枚举名应遵循标识符的命名规则。 C语言编译对枚举类型的枚举元素按常量处理,故称枚举常量。...不要因为他们是标识符而把他们看作变量,不能对他们赋值,但枚举元素可以用来判断比较。 每一个枚举元素都代表一个整数,C语言编译按定义时的顺序默认它们的为0,1,2,3,4,5……。...100道C语言源码案例请去公众号:C语言入门到精通

79740

C语言笔记】枚举

其可以与typedef来进行类比进行理解(可查看【C语言笔记】define与typedef的区别?)。除此之外,其还可以与枚举enum进行类比。 二、什么是枚举 从字面理解,就是一一列举的意思。...枚举成员的是根据前一个成员的递增1,即上面枚举定义等价于: enum DAY { MON=1, TUE=2, WED=3, THU=4, FRI=5, SAT=6, SUN=7 }; 若上述定义中第一个成员...若其他成员赋了初值,也是遵循“枚举成员的是根据前一个成员的递增1”这一规则,如: enum DAY { A,B,C=100,D,F=200,G }; 此处 A=0 B=1 C=100 D=101...从该程序运行结果也可看出,枚举类型变量需要存放的是一个整数,它的长度和int的长度相同。 以上就是关于枚举类型enum的一些笔记,如有错误欢迎指出。 最后,分享两篇关于枚举的文章,都讲得很详细。...https://www.cnblogs.com/JCSU/articles/1299051.html http://c.biancheng.net/cpp/html/99.html

91951
您找到你想要的搜索结果了吗?
是的
没有找到

C语言 | 枚举概述

在编程方面有着天赋异禀的人毕竟是少数,我们大多数人想要从C语言小白进阶到高手,需要经历的是日积月累的学习。 那么如何学习呢?当然是每天都练习一道C语言题目!! ? 作者 闫小林 白天搬砖,晚上做梦。...C语言枚举简述 在C语言中,如果一个变量只有几种可能的,则可以定义为枚举类型,所谓“枚举”就是指把可能的一一列举出来,变量的只限于列举出来的的范围内。...枚举变量和其他数值型量不同,它们的只限于花括号中指定的之一,枚举常量是由程序设计者命名的,用什么名字代表什么含义,完全由程序员根据自己的需要而定,并在程序中作相应处理。...一般形式 enum[枚举名]{枚举元素列表} 其中枚举名应遵循标识符的命名规则。 C语言编译对枚举类型的枚举元素按常量处理,故称枚举常量。...不要因为他们是标识符而把他们看作变量,不能对他们赋值,但枚举元素可以用来判断比较。 每一个枚举元素都代表一个整数,C语言编译按定义时的顺序默认它们的为0,1,2,3,4,5……。

58710

C语言枚举类型)

C语言中的枚举类型常年跑龙套当配角,不受待见,这当然是有其个人原因的。今天来个小知识,看看枚举为什么那么衰,也顺便看看怎么用。 我们先来回忆一下为什么需要枚举枚举究竟是个什么东东?...这么看来,枚举是一种挺好玩也挺有用的东西,但是在C语言中怎么就不受待见了呢?...原因是C语言只提供了一种阉割版的枚举,以上两大目的在C中实质上都是没有实现的,也就是说,在C语言中,实际情况是这样的: color = blue; // 正确,此时color就是5 color = 5;...你看明白了吧,C语言中的所谓枚举其实就是个坑爹货,其实就是彻头彻尾的整型数据而已。...枚举的真正实现,在C++中才有实现。

1.8K30

swift 枚举(枚举关联枚举原始、递归枚举等)

Swift 枚举可以用来存储任意类型的关联 声明存储不同类型关联枚举成员(这个定义不提供任何Int或String类型的关联) 一个成员是(Int,Int,Int)类型关联的num 一个成员是...= "C" case winter = "D" } 注意: 原始和关联是不同的。...原始是在定义枚举时被预先填充的。对于一个特定的枚举成员,它的原始始终不变。关联是创建一个基于枚举成员的常量或变量时才设置的枚举成员的关联可以变化。...) 使用原始初始化枚举实例 可以通过rawValue初始化一个枚举成员,返回则是枚举成员或nil 可以通过这个来判断这个新枚举成员是否在枚举中 enum Season:Int { case...(num, num))) // 打印 "0"

24510

C语言】联合和枚举

, Sun }; enum Day就是枚举类型,大括号中的内容为枚举类型的可能取值,也叫枚举常量,这些枚举常量都是有的,默认从0开始,依次递增1,也可以赋初始 enum Day { Mon,...Tues, Wed, Thur=2, Fri, Sat, Sun }; 从上到下依次为0 1 2 2 3 4 5 中间赋值,前面从头开始为0,依次递增1,到该枚举常量时,取被赋予的,然后往下还是依次递增...1 enum Day { Mon=4, Tues, Wed, Thur, Fri, Sat, Sun }; 从上到下依次为4 5 6 7 8 9 10 依次递增1 2、枚举的优点 我们知道...①增强代码的可读与可维护性 ②和#define相比枚举有类型检查,更加安全严谨 ③便于调试,在预处理阶段,会删除#define定义的符号,直接用所替换的替换,导致预处理与真实代码不统一,无法更好地调试...Sat, Sun }; enum Day today = Mon; 使用枚举常量为枚举变量赋值,在C语言中可以用整数来给枚举变量赋值,但在C++中不可以 今日分享就到这里了

5610

9.6 C语言枚举类型

01枚举 1、如果一个变量只有几种可能的,则可以定义为枚举类型,所谓“枚举”就是指把可能的一一列举出来,变量的只限于列举出来的的范围内。...2、枚举变量和其他数值型量不同,它们的只限于花括号中指定的之一。 3、枚举常量是由程序设计者命名的,用什么名字代表什么含义,完全由程序员根据自己的需要而定,并在程序中作相应处理。...4、一般形式 enum[枚举名]{枚举元素列表},其中枚举名应遵循标识符的命名规则。 5、C编译对枚举类型的枚举元素按常量处理,故称枚举常量。不要因为他们是标识符而把他们看作变量,不能对他们赋值。...6、每一个枚举元素都代表一个整数,C语言编译按定义时的顺序默认它们的为0,1,2,3,4,5……。 7、枚举元素可以用来判断比较。...C语言 | 逆序输出10个数 更多案例可以go公众号:C语言入门到精通

9212725

C语言(13)----联合和枚举

但是需要注意的是,当最大成员大小不是最大对齐数的整数倍的时候,那么此时联合体的大小为了内存对齐要扩大为最大对齐数的整数倍 举例: #include union Un1 { char c[...如果 bytes[0] 的为1,则表示当前机器为小端;如果 bytes[0] 的为0,则表示当前机器为大端。最后根据判断结果输出相应的信息。 枚举 枚举顾名思义,就是将情况一一列举。...例如: enum Weekday today = TUE; 枚举类型还可以与 switch 语句结合使用,方便对不同的枚举进行处理。...相较于#define:枚举可以进行类型检查,更具有严谨性 类型安全,使用安全:枚举类型是一种类型安全的数据类型,编译器会检查枚举的合法性,防止使用未定义的。...并且一次可以定义多个常量 提高代码的可移植性:枚举类型可以在不同平台上保持一致,因为枚举是由编译器自动生成的。

4010

c语言枚举类型enum例子_枚举是什么意思

C语言为这种类型的变量的定义提供了enum关键字。...在没有显式说明的情况下,枚举类型中的第一个枚举常量的为0,第二个为1,以此类推。...如果只指定了部分枚举常量的,那么未指定枚举常量的将依着最后一个指定向后递增(步长为1) 不同枚举类型中的枚举常量的名字必须互不相同。...同一枚举类型中的不同的枚举常量可以具有相同的 枚举类型为建立常量值与标识符之间的关联提供了一种便利的方式。...相对于#define语句来说,它的优势在于常量值可以自动生成 尽管可以声明枚举类型的变量,但编译器不检查这种类型变量中存储的是否为该枚举类型中的有效,不过,枚举类型的变量提供这种检查 注意: 不能对枚举常量进行赋值操作

1.1K20
领券