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

C语言 | 枚举概述

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

82040

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

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

    C语言 | 枚举概述

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

    60310

    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"

    30210

    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++中不可以 今日分享就到这里了

    7010

    9.6 C语言枚举类型

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

    9372725

    C语言枚举类型(enum)

    枚举的含义 在开始正式学习枚举类型之前,我们得先了解一下何为“枚举”? 所谓枚举顾名思义就是一一列举。把所有可能的都一一列举出来。...说得抽象一点的话,就是在一个有限的集合中,将这个集合里面的都一一列举出来,而这个集合就属于枚举类型。 2....枚举类型的声明 在讲完枚举的含义之后,我们就来认识一下,在C语言中是如何声明一个枚举类型的。...以上定义的enum Day,enum Sex,enum Color都是枚举类型。 {}里面的就是枚举类型可能取值,也叫做枚举常量。 这些可能的取值都是有的,默认是从0开始,依次递增1。...那我们是否可以拿整数给枚举变量赋值呢?在C语言中时允许的,但在C++中时不行的,C++对于类型的检查是比较严格的。

    7410

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

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

    5310

    C语言详解(联合和枚举

    //结构体 struct S { int n; char c; }; //联合体 union U { int n; char c; }; 但是与结构体不同的是编译器只为联合体最大的成员分配足够的内存空间...,联合体所有成员共用一块内存,因此联合体还有一个名字——共用体 正是因为联合体所有成员公共一块内存,所以当联合体其中一个成员的变化时其他成员的也跟着变化。...1、枚举类型的声明 在现实生活中,有些是有限的,是可以一一列举出来的,比如:星期只有星期一到星期日,三原色只有红、绿、蓝,性别只有男、女和保密等。...也就是说我们给枚举类型赋值时赋的是它的可能取值。 这些可能取值有没有什么特点呢? 也就是说,枚举常量的默认是从0开始的,依次递增。 并且其也就可以修改的。...枚举常量的会根据它前面的而递增1。

    9710
    领券