C/C++进阶学习笔记(一) 枚举类型
来源:互联网 发布:战舰世界腓特烈数据 编辑:程序博客网 时间:2024/06/05 06:23
为了在C/C++的学习之路中留下更深刻的印象,从现在开始,我将着手写一系列的C/C++进阶学习笔记,文章中不涉及深层次的应用,不作教科书式的详解,只写出基本的用法和介绍,以后在学习和工作过程中有用到的功能再作补充,保证介绍的简洁、实用和高效
欢迎到 我的博客 查看更详细的内容
枚举类型
介绍
有时候在开发中需要定义一系列的有规律的常量
#define Mon 1#define Tue 2#define Wed 3#define Thu 4#define Fri 5#define Sat 6#define Sun 7
这样的写法比较重复累赘,我们可以用枚举类型简化这一过程
enum DAY{ Mon = 1, Tue, Wed, Thu, Fri, Sat, Sun};
与上述的反复#define
等价,都定义了一系列的常量变量,这就是枚举类型的主要作用,默认第一个常量从0开始,可以人为赋值每一个常量的值
用法
声明和定义分开
enum DAY { Mon = 1,Tue,Wed,Thu,Fri,Sat,Sun }; ...... enum DAY yesterday; enum DAY today;
声明和定义同时进行
enum //标号DAY可以省略{ Sat, Sun = 0, Mon, Tue, Wed, Thu, Fri} today; //today的类型为枚举型enum DAY
enum DAY { Mon=1, Tue, Wed, Thu, Fri Sat, Sun} today; //声明同时定义
示例
环境 Windows 7 旗舰版 Visual Studio 2015
// Enum_Practice.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <iostream>using namespace std;enum Week{ Sun = 1, Mon, Tue, Wed, Thu, Fri, Sat};int main(){ enum Week today, yesterday; int temp; while (1) { cout << endl << "Enter day: " << endl; cin >> temp; today = (Week)temp; //赋值要强制转换类型 switch (today) { case Sun:cout << "Sunday" << endl; break; case Mon:cout << "Monday" << endl; break; case Tue:cout << "Tuesday" << endl; break; case Wed:cout << "Wendsday" << endl; break; case Thu:cout << "Thursday" << endl; break; case Fri:cout << "Friday" << endl; break; case Sat:cout << "Sataday" << endl; break; default:cout << "Error" << endl; break; }; yesterday = (Week)(today - 1); //赋值要进行类型强制转换 cout << "Yesterday is "; switch (yesterday) { case Sun:cout << "Sunday" << endl; break; case Mon:cout << "Monday" << endl; break; case Tue:cout << "Tuesday" << endl; break; case Wed:cout << "Wendsday" << endl; break; case Thu:cout << "Thursday" << endl; break; case Fri:cout << "Friday" << endl; break; case Sat:cout << "Sataday" << endl; break; default:cout << "Error" << endl; break; }; } return 0;}
0 0
- C/C++进阶学习笔记(一) 枚举类型
- 枚举类型(C#)
- C语言学习笔记:23_枚举类型
- C/C++进阶笔记(一)
- 学习笔记(C基础+进阶)
- 学习笔记(C基础+进阶)
- 《C语言进阶》学习笔记
- C/C++进阶学习笔记
- c语言(枚举类型)
- JAVA学习笔记:(一)深入探究枚举类型
- C++&C学习笔记(一)(基础)
- C语言进阶-第29讲:枚举类型及其应用(对称点)
- c 学习笔记 (一)
- C学习笔记(一)
- C ++ 学习笔记(一)
- C学习笔记(一)
- C枚举类型enum
- C枚举类型enum
- sudo apt-get install安装的php bin目录在什么位置
- 降维——PCA(主成分分析)
- 冒泡排序
- “远程温度多点温度采集卡”的笔记
- BFS广度优先搜索(7)--poj3126(基础题)
- C/C++进阶学习笔记(一) 枚举类型
- 洛谷 P1214 [USACO1.4] 等差数列 Arithmetic Progressions
- Android 多Dex分包机制
- POJ 1625 Censored! AC自动机+DP+高精度 *
- ubuntu16.04 mxnet
- 万恶的crontab -r命令
- bzoj2388(凸包+分块)
- java逻辑删除数据库所有表的包含某个外键的行
- leetcode 100