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

C语言枚举类型

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

1.8K30

C语言——枚举类型

一,什么是枚举类型 简单来说,枚举类型就是可以让我们给整数值分配有意义名字,从而使得代码更易读、易维护 二,枚举类型定义和变量声明 1,如何定义和声明 枚举类型定义和变量声明方式也与结构体和联合体相似...(一)枚举类型定义 enum 枚举名 { 成员项表列 }; (二)枚举变量声明 enum 枚举名 变量名 举例:我们定义一个代表颜色枚举类型,然后创建一个枚举变量a enum color...如果我们在创建枚举变量时,为未给成员进行初始化赋值,则C语言会自动赋值 遵循:默认从0开始,依次增1 如果只有前几个值,那么后面未被赋值成员也会被自动赋值,遵循依次增1 例子一(不赋值)...3,命名注意事项 同一个程序中不能定义同名枚举类型;不同枚举类型中,也不能存在同名枚举成员。...⭐C语言枚举变量通常只能被赋值为枚举类型中定义成员。

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

9.6 C语言枚举类型

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

9182725

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

在实际编程应用中,有的变量只有几种可能取值,譬如说一个星期七种可能,性别的两种可能等等。C语言为这种类型变量定义提供了enum关键字。...要使用枚举类型变量,首先需要先定义一个枚举类型名,然后再声明该变量是枚举类型 ---- 例1: enum WEEKDAY{ \\该语句定义了一个枚举类型 MONDAY = 1,...同一枚举类型不同枚举常量可以具有相同枚举类型为建立常量值与标识符之间关联提供了一种便利方式。...相对于#define语句来说,它优势在于常量值可以自动生成 尽管可以声明枚举类型变量,但编译器不检查这种类型变量中存储值是否为该枚举类型有效值,不过,枚举类型变量提供这种检查 注意: 不能对枚举常量进行赋值操作...(定义枚举类型时除外) 枚举常量和枚举变量可以用于判断语句,实际用于判断是其中实际包含值 一个整数不能直接赋值给一个枚举变量,必须用该枚举变量所属枚举类型进行类型强制转换才行 使用常规手段输出无法输出枚举常量所对应字符串

1.1K20

C语言结构体、联合与枚举类型

于是C语言就定义了一个不同类型数据集合数据结构 ————结构体。...准确来说,结构体(struct)指的是一种数据结构,是C语言中聚合数据类型(aggregate data type)一类。结构体可以被声明为变量、指针或数组等,用以实现较复杂数据结构。...在进行某些算法C语言编程时候,需要使几种不同类型变量存放到同一段内存单元中。也就是使用覆盖技术,几个变量互相覆盖。...这种几个不同变量共同占用一段内存结构,在C语言中,被称作“共用体”类型结构,简称共用体,也叫联合体。...等等,其实啊枚举应用非常广泛,我们在用C语言中型大型项目里面常常会用到枚举类型,比如在写植物大战僵尸游戏,现在要求你把植物卡槽写满,你该怎么办,难道用1代表这个植物2代表那个植物?

10110

C语言——自定义类型枚举

前言 本文介绍自定义类型枚举 一、枚举 枚举,通俗来讲就是一一列举 要注意枚举枚举常量是有限个数 例如,三原色:红黄蓝;性别:男、女、保密;…… 二、定义与声明 #define _CRT_SECURE_NO_WARNINGS..., 一般默认第一个枚举常量值是0,后面的每一个枚举常量值都是给前一个值加一; 如果给第一个枚举常量进行赋值,则后面的枚举常量也会随之变化,规则也是加一。...三、枚举优点 1.增加了代码可读性和可维护性 例如:之前编写小游戏主菜单就可以用枚举来将switch选择中0、1、2进行替换,更方便阅读。...,因此不能对宏定义进行调试,而枚举可以被调试】 ②枚举类型类型检查更加严谨(C语言中体现不多,但是C++会体现); 【只能拿枚举常量给枚举变量赋值才不会出现类型差异】 ③使用更方便,一次可以定义多个变量...---- 总结 本文主要介绍了自定义类型结构体类型相关知识,希望这篇文章对你理解结构体有所帮助。

32220

C++枚举类型

C++枚举类型C++中,如果一个变量只有几种可能值,可以定义为枚举类型枚举是指将变量值一一列举出来,变量值只能在列举出来范围内。  C++声明枚举类型用enum开头。...C++声明枚举类型一般形式为 enum 枚举类型名 {枚举常量表列}; C++在声明了枚举类型之后,可以用声明枚举来定义变量。...学过C语言读者应该知道,枚举类型名包括关键字enum,但是在C++中允许不写enum,一般也不写enum,但保留了C语言用法。 ...关于C++枚举,以下六点读者需要知道: C++对枚举元素按常量处理,故称枚举常量。 C++枚举元素作为常量,它们是有值C++编译按定义时顺序对它们赋值为0,1,2,3,…。...C++可以在声明枚举类型时另行指定枚举元素值。 C++枚举值可以用来做判断比较。 C++中一个整数不能直接赋给一个枚举变量。 10.1 C++枚举类型 更多案例可以go公众号:C语言入门到精通

983128

C语言:自定义类型——联合和枚举

二、枚举类型 2.1 枚举类型声明 枚举顾名思义就是⼀⼀列举。 把可能取值⼀⼀列举。...2.2 枚举类型优点 1、增加代码可读性和可维护性 比如我们在实现游戏时常常会这样去写 此时如果不和菜单建立联系 我们并不能一下子就看出来case1和case0含义,可读性较差,可如果在这边使用枚举类型...2、 和#define定义标识符⽐较枚举类型检查,更加严谨。...#define定义标识符是不过是一个符号,而枚举是一种类型,有类型检查写代码会更加严谨 3、 便于调试,预处理阶段会删除 #define 定义符号 枚举类型在调试时候会显示出成员名,但是#define...2.3 枚举类型使用 使用方法:使⽤枚举常量给枚举变量赋值 那是否可以拿整数给枚举变量赋值呢? 在C语⾔中是可以,但是在C++是不⾏C++类型检查⽐ 较严格。

13310

C语言共用体与枚举类型-学习三十

共用体类型声明格式: union 共用体名{ 数据类型 成员名1; 数据类型 成员名2; .......c 或 pd ->c、d1.f 或 pd ->f 同类型共用体变量之间可以互相赋值。...如果一个变量只有几种可能值,则可以定义为枚举(enumration)类型, 所谓“枚举”就是把可能值一一列举出来,变量取值限于列举出来范围内。...枚举类型声明格式: enum 枚举类型名{ 枚举元素列表 // 枚举元素之间以逗号间隔 }; 枚举变量定义: 1.先声明枚举数据类型,再定义枚举变量 enum week{...枚举类型使用时需注意以下几点: 1.枚举元素是常量,有固定值,不能将其作为变量使用 例如: sun=0; mon = 1 错误,不能为枚举元素赋值 2.每一个枚举元素都代表了一个整数,编译程序按定义时顺序默认它们值为

51410

C语言——N自定义类型:联合和枚举

return 0; } 二、枚举类型 1、枚举类型声明 ⽐如我们现实⽣活中: ⼀周星期⼀到星期⽇是有限7天,可以⼀⼀列举 性别有:男、⼥、保密,也可以⼀⼀列举 ⽉份有12个⽉,也可以⼀⼀...{ }中内容是枚举类型可能取值,也叫 枚举常量 。 这些可能取值都是有值,默认从0开始,依次递增1,当然在声明枚举类型时候也可以赋初值。...enum Color//颜⾊ { RED = 2, GREEN = 4, BLUE = 8 }; 2、枚举类型优点 为什么使用枚举?...我们可以使用 #define 定义常量,为什么非要使用枚举枚举优点: 1. 增加代码可读性和可维护性; 2. 和#define定义标识符⽐较枚举类型检查,更加严谨; 3....在C语⾔中是可以,但是在C++是不⾏C++类型检查⽐较严格。

9310

Go语言 枚举类型

package mainimport "fmt"//1.枚举使用// 枚举指一系列相关常量,比如下面关于一个星期中每天定义。...通过上一节例子,我们// 看到可以用在 const 后跟一对圆括号方式定义一组常量,这种定义法在Go语言中通常用于定义// 枚举值。Go语言并不支持众多其他语言明确支持 enum 关键字。...//3 Thursday //4 Friday //5 Saturday //6 //同Go语言其他符号(symbol)一样,以大写字母开头常量在包外可见。...numberOfDays )//2.类型/* Go语言内置以下这些基础类型 布尔类型 : bool 整型: int,int8,int16,int32,int64,uint,uint8,uint16,...错误类型: error 此外,Go语言也支持以下符合类型 指针:pointer 数组:array 切片:slice 字典:map 通道:chan 结构体:struct 接口:interface */func

77280

【熟视C语言】自定义类型枚举详解

枚举 枚举,也就是列举。现实生活中有很多这种可以列举出来事物,比如星期一星期二这样有限天数,性别的种类,月份等等。...枚举类型定义 以下几个为枚举类型定义演示: enum day//星期 { Mon, Tues, Wed, Thur, Fri, Sat, Sun }; enum gender//性别...{ male, female, unknown }; 上面的enum day、enum gender就是枚举类型,而括号内内容就是枚举类型可能取值,也叫枚举常量。...枚举优点: 增加代码可读性和可维护性。 和#define定义标识符相比,枚举类型检查,更严谨。 防止命名污染(封装)。 便于调试。 使用方便,一次可以定义多个常量。...main() { enum Example a = Example1;//只能拿枚举常量给枚举变量赋值,避免出现类型差异 a = 4;//虽然在我使用上vs编译器上能编译成功,但是这是一个危险且非法赋值

10910

C语言 | 枚举概述

C语言枚举简述 在C语言中,如果一个变量只有几种可能值,则可以定义为枚举类型,所谓“枚举”就是指把可能值一一列举出来,变量值只限于列举出来范围内。...一般形式 enum[枚举名]{枚举元素列表} 其中枚举名应遵循标识符命名规则。 C语言编译对枚举类型枚举元素按常量处理,故称枚举常量。...不要因为他们是标识符而把他们看作变量,不能对他们赋值,但枚举元素可以用来判断比较。 每一个枚举元素都代表一个整数,C语言编译按定义时顺序默认它们值为0,1,2,3,4,5……。...以上,如果你看了觉得对你有所帮助,就给小林点个赞,分享给身边的人叭,这样小林也有更新下去动力,跪谢各位父老乡亲啦~ C语言学习路线    C语言开发工具 VC6.0、Devc++、VS2019使用教程...100道C语言源码案例请去公众号:C语言入门到精通

79440

C语言笔记】枚举

其可以与typedef来进行类比进行理解(可查看【C语言笔记】define与typedef区别?)。除此之外,其还可以与枚举enum进行类比。 二、什么是枚举 从字面理解,就是一一列举意思。...若其他成员赋了初值,也是遵循“枚举成员值是根据前一个成员值递增1”这一规则,如: enum DAY { A,B,C=100,D,F=200,G }; 此处 A=0 B=1 C=100 D=101...F=200 G=201 三、枚举类型变量定义方法 方法一 enum DAY { MON=1, TUE, WED, THU, FRI, SAT, SUN }; enum DAY good_day...四、枚举变量占用字节数?...从该程序运行结果也可看出,枚举类型变量需要存放是一个整数,它长度和int长度相同。 以上就是关于枚举类型enum一些笔记,如有错误欢迎指出。 最后,分享两篇关于枚举文章,都讲得很详细。

91751

C语言 | 枚举概述

在编程方面有着天赋异禀的人毕竟是少数,我们大多数人想要从C语言小白进阶到高手,需要经历是日积月累学习。 那么如何学习呢?当然是每天都练习一道C语言题目!! ? 作者 闫小林 白天搬砖,晚上做梦。...C语言枚举简述 在C语言中,如果一个变量只有几种可能值,则可以定义为枚举类型,所谓“枚举”就是指把可能值一一列举出来,变量值只限于列举出来范围内。...一般形式 enum[枚举名]{枚举元素列表} 其中枚举名应遵循标识符命名规则。 C语言编译对枚举类型枚举元素按常量处理,故称枚举常量。...不要因为他们是标识符而把他们看作变量,不能对他们赋值,但枚举元素可以用来判断比较。 每一个枚举元素都代表一个整数,C语言编译按定义时顺序默认它们值为0,1,2,3,4,5……。...C语言枚举输出对应星期 #include int main() { //PS:外国人习惯从0开始 enum Week{ Monday=0, Tuesday=1, Wednesday

58410

c++枚举类型enum输出_python中枚举

目录: 一.Enum枚举含义: 二.Enum枚举声明(举例说明): 三.Enum枚举特点(举例介绍): 四.Enum枚举作用: 五.Enum枚举注意事项(举例说明): 一.Enum枚举含义:...Enum枚举:枚举是一组命名整型常量,枚举类型是使用 enum 关键字声明。...枚举是值类型,数据直接存储在栈中,而不是使用引用和真实数据隔离方式来存储,其包含自己值,且不能被继承或者传递继承,枚举中每个元素基础类型是 int。可以使用冒号指定另一种整数值类型。...1. enum_name 指定枚举类型名称。...在给枚举类型实例赋值时,VS.NET IDE会通过IntelliSense弹出一个包含可接受值列表框,减少了按键次数,并能够让我们想起有那些值可以使用 五.Enum枚举注意事项(举例说明): enum

1.5K40
领券