最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
C语言枚举类型学习笔记
时间:2022-06-25 04:51:33 编辑:袖梨 来源:一聚教程网
介绍
枚举可以根据Integer、Long、Short或Byte中的任意一种数据类型来创建一种新型变量。这种变量能设置为已经定义的一组之中的一个,有效地防止用户提供无效值。该变量可使代码更加清晰,因为它可以描述特定的值
枚举类型使一种基本数据类型,用于声明一组命名的常数,当一种变量有几种可能的取值使,可以定义为枚举类型。
它的值为符号常量而不是字面值,这些类型的变量实际上以整型的方式存储,这些符号名实际值都是整型值。
定义方式1:
enum num{first,second,third,forth};
enum num num1,num2; 类似struct的定义方式。
定义方式2:
enum {first,second,third,forth} num1,num2;
有些时候我们可以对这些符号名指定特定的整型值,比如:
enum {first=1,second=2,third,forth},未指定的值默认比前一个符号大1。但是我们并不推荐这种赋值,这样会把枚举变量和整数混在一起,反而削弱了枚举类型的字面含义。
如何使用枚举类型:
以第一种第一方式为例,num1,num2为枚举类型变量,但是这些变量每次只能有一个值,这个值使枚举类型定义中的first、second、third、forth四种,如果有些变量值的取值有限,并且我们想尽可能通过字面意思表达出来,使用枚举类型使最合适不过了。
看一个实际的例子:
enum enumex{
first,
second,
third,
forth,
};
enum enumex m_enumex;
m_enumex = first;
switch(m_enumex)
{
case first:printf("firstn");break;
case second:printf("secondn");break;
case third:printf("thirdn");break;
case forth:printf("forthn");break;
default: break;
}
我们完全可以根据不同情况下m_enumex的取值来安排我们的代码。在定义enum时,最后一个逗号可加可不加,加上会看着更清楚。
相关文章
- 《尼尔:机械纪元》武器黑之倨傲属性及特殊能力介绍 11-15
- 《尼尔:机械纪元》机械生命体的枪获得方法介绍 11-15
- 《尼尔:机械纪元》武器机械生命体的枪属性及特殊能力介绍 11-15
- 《尼尔:机械纪元》天使之圣翼获得方法介绍 11-15
- 《尼尔:机械纪元》武器天使之圣翼属性及特殊能力介绍 11-15
- 《尼尔:机械纪元》武器恶魔之秽牙属性及特殊能力介绍 11-15