C语言学习笔记:枚举(enum)

这篇具有很好参考价值的文章主要介绍了C语言学习笔记:枚举(enum)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

✨博文作者:烟雨孤舟
💖 喜欢的可以 点赞 收藏 关注哦~~

✍️ 作者简介: 一个热爱大数据的学习者

✍️ 笔记简介:作为大数据爱好者,以下是个人总结的学习笔记,如有错误,请多多指教!

目录

简介

枚举定义

枚举变量的定义

枚举的应用

简介

枚举enum是英文enumerate的缩写,列举、排列说明的意思。枚举是 C 语言中的一种基本数据类型,用于定义一组具有离散值的常量。枚举类型可以让我们的程序使用一些固定长度和固定数值的变量值范围。枚举类型通常用于为程序中的一组相关的常量取名字,以便于程序的可读性和维护性。定义一个枚举类型,需要使用 enum 关键字,后面跟着枚举类型的名称,以及用大括号 {} 括起来的一组枚举常量。每个枚举常量可以用一个标识符来表示,也可以为它们指定一个整数值,如果没有指定,那么默认从 0 开始递增。

枚举定义

enum 枚举名 {枚举元素1,枚举元素2,……枚举元素n};
//枚举颜色
enum color{red, oreange,yellow,green,ching,blue,purple}; 

 枚举是 C 语言中的一种基本数据类型,它可以让数据更简洁,更易读。比如:一星期有 7 天,如果不用枚举,我们需要使用 #define 来为每个整数定义一个别名

//#define 
#define MON  1
#define TUE  2
#define WED  3
#define THU  4
#define FRI  5
#define SAT  6
#define SUN  7
//枚举
enum DA{MON=1, TUE, WED, THU, FRI, SAT, SUN};
注意:第一个枚举成员的默认值为整型的0,后续枚举成员的值在前一个成员上加1。我们在这个实例中把第一个枚举成员的值定义为1,第二个就为2,以此类推。

枚举变量的定义

先定义枚举类型,再定义枚举变量
enum DAY{MON=1, TUE, WED, THU, FRI, SAT, SUN};
enum DAY day;
定义枚举类型的同时定义枚举变量:
enum DAY{MON=1, TUE, WED, THU, FRI, SAT, SUN} day;
省略枚举名称,直接定义枚举变量
enum{MON=1, TUE, WED, THU, FRI, SAT, SUN} day;

案例:
#include <stdio.h>
enum DAY{MON=1, TUE, WED, THU, FRI, SAT, SUN};
int main()
{
    enum DAY day;
    day = WED;
    printf("%d",day);
    return 0;
}

#include <stdio.h>
enum DAY{MON=1, TUE, WED, THU, FRI, SAT, SUN} day; 
int main()
{
    day = WED;
    printf("%d",day);
    return 0;
}

#include <stdio.h>
enum {MON=1, TUE, WED, THU, FRI, SAT, SUN} day; 
int main()
{
    day = WED;
    printf("%d",day);
    return 0;
}
//以上三个函数输出结果都是3,WED的下标是3

枚举的应用

 文章来源地址https://www.toymoban.com/news/detail-488764.html

#include <stdio.h>
int main(){
    enum color { red=1, green, blue } color;
    printf("请输入你喜欢的颜色: (1. red, 2. green, 3. blue): ");
    scanf("%u", &color);
    switch (color){
    case red:
        printf("你喜欢的颜色是红色");
        break;
    case green:
        printf("你喜欢的颜色是绿色");
        break;
    case blue:
        printf("你喜欢的颜色是蓝色");
        break;
    default:
        printf("你没有选择你喜欢的颜色");
    }
    return 0;
}
结果:
//请输入你喜欢的颜色: (1. red, 2. green, 3. blue): 1
//你喜欢的颜色是红色
将整数转换为枚举
#include <stdio.h>
int main(){
    enum day{saturday,sunday,monday,tuesday,wednesday,
             thursday,friday} workday; 
    //枚举变量定义,枚举名可以省略,变量定义简化 
    int a = 1;
    workday = ( enum day ) a;  //类型转换
    printf("sunday:%d",workday);
    return 0;
}
结果:
//sunday:1

到了这里,关于C语言学习笔记:枚举(enum)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【go语言学习笔记】05 Go 语言实战

    在做项目开发的时候,要善于借助已经有的轮子,让自己的开发更有效率,也更容易实现。 1. RESTful API 定义 RESTful API 是一套规范,它可以规范如何对服务器上的资源进行操作。和 RESTful API 和密不可分的是 HTTP Method。 1.1 HTTP Method HTTP Method最常见的就是POST和GET,其实最早在

    2024年02月13日
    浏览(44)
  • Go语言学习笔记

    注:安装教程 注:上一篇笔记 注:下一篇笔记 2.6、流程控制 2.6.1、条件语句 2.6.2、选择语句 2.6.3、循环语句 2.6.4、跳转语句 goto语句跳转到本函数内的某个标签 2.7、函数 2.7.1、函数定义 函数构成代码执行的逻辑结构。函数的基本组成为:func、函数名、参数列表、返回值

    2024年02月06日
    浏览(45)
  • 6.Go语言学习笔记-结合chatGPT辅助学习Go语言底层原理

    1、Go版本 2、汇编基础 推荐阅读:GO汇编语言简介 推荐阅读:A Quick Guide to Go\\\'s Assembler - The Go Programming Language 精简指令集 数据传输: MOV/LEA 跳转指令: CMP/TEST/JMP/JCC 栈指令: PUSH/POP 函数调用指令: CALL/RET 算术指令: ADD/SUB/MUL/DIV 逻辑指令: AND/OR/XOR/NOT 移位指令: SHL/SHR JCC有条件跳转: JE

    2024年02月04日
    浏览(40)
  • C语言学习笔记:数组

    ✨博文作者:烟雨孤舟 💖 喜欢的可以 点赞 收藏 关注哦~~ ✍️ 作者简介: 一个热爱大数据的学习者 ✍️ 笔记简介:作为大数据爱好者,以下是个人总结的学习笔记,如有错误,请多多指教! 目录 ​​​​​​​ 简介 数组声明 数组初始化 访问数组元素 多维数组 二维数组

    2024年02月09日
    浏览(54)
  • C语言学习笔记<1>

    1. EOF(End of File)是文件结束标志,用于表示文件已经读取完毕。在C语言中,可以通过判断是否读取到EOF来判断文件是否读取完毕。 以下是一个简单的C语言代码示例,用于读取一个文本文件并输出其内容: 2.单步执行 #include Windows.h 是C/C++中引入Windows API头文件的语句,它包

    2024年04月22日
    浏览(31)
  • Go语言学习笔记(三)

    教程:文档 - Go 编程语言 (studygolang.com) 在call-module-code需要注意,需要在hello目录下操作 这是一个在Go项目的模块管理中的命令。在Go的模块管理工具( go mod )中,这个命令用于修改模块依赖关系。 具体来说, go mod edit -replace example.com/greetings=../greetings  这个命令的作用是:

    2024年02月02日
    浏览(45)
  • go语言学习笔记1

    ​ GoLang是一种静态强类型、编译型、并发型,并具有 垃圾回收 功能的编程语言;它可以在不损失应用程序性能的情况下极大的降低代码的复杂性,还可以发挥多核处理器同步多工的优点,并可解决面向对象程序设计的麻烦,并帮助程序设计师处理琐碎但重要的内存管理问题

    2024年02月12日
    浏览(48)
  • Go语言学习笔记(二)

    以下是一些推荐的Go语言学习资源的链接: Go语言教程:https://golang.org/doc/ Go by Example:Go by Example Golang Tutorials:https://golangtutorials.com/ Go语言第一课(慕课网):PHP模糊查询技术案例视频教程-慕课网 Go语言进阶教程(实验楼):极客企业版 Go语言高级编程(GitBook):谁是凶手

    2024年01月20日
    浏览(50)
  • lua脚本语言学习笔记

    Lua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。 因为我们使用redis的时候一般要写lua脚本,这篇文章就介绍一下lua脚本语言的基础用法。 window操作系统下可以使用SciTE来

    2024年02月16日
    浏览(48)
  • C语言学习笔记---C语言分支与循环语句

    前言: 什么是语句? C语言可分为以下五类: 表达式语句 函数调用语句 控制语句 复合语句 空语句 语句 :C语言中,由分号隔开的句子就是一条语句 如: C语言中用 非零 表示 真 ,用 零 表示 假 ,即: 逻辑真,逻辑假 三大语法结构 :顺序结构、分支(选择)结构、循环结构

    2024年02月16日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包