C语言中的enum(枚举)用法

最近在写数据结构的广义表时候用到了这个概念,在学习C语言的时候没有太注意们这里学一下。

我在网上结合了很多资料,这里自己总结一下。

首先说,JAVA和C++中都有枚举类型。


如果一个变量你需要几种可能存在的值,那么就可以被定义成为枚举类型。之所以叫枚举就是说将变量或者叫对象可能存在的情况也可以说是可能的值一一例举出来。 
例如:

           一个铅笔盒中有一支笔,但在没有打开之前你并不知道它是什么笔,可能是铅笔也可能是钢笔,

         这里有两种可能,那么你就可以定义一个枚举类型来表示它!

enum box{pencil,pen};



这个枚举变量内含有两个元素也称枚举元素在这里是pencil和pen,分别表示铅笔和钢笔。


如果你想定义两个具有同样特性枚举类型的变量那么你可以用如下的两种方式进行定义!

enum box{pencil,pen};  
  
enum box box2;//或者简写成box box2;

  再有一种就是在声明的时候同时定义。

enum {pencil,pen}box,box2; //在声明的同时进行定义!

这里看起来很像结构体;


枚举变量中的枚举元素系统是按照常量来处理的,故叫枚举常量

他们是不能进行普通的算术赋值的,(pencil=1;)这样的写发是错误的,

但是你可以在声明的时候进行赋值操作!

 

  enum box{pencil=1,pen=2};

但是这里要特别注意的一点是,如果你不进行元素赋

你可能感兴趣的:(C,&&,C++)