C语言 枚举类型

 

  1、 什么是枚举类型?

    枚举类型在定义时就确定了可以取值的范围,然后,枚举类型所定义的变量的取值范围就是枚举类型定义时的值,

  同时,不可以取其它的值。

  

  2、枚举类型定义的语法格式1

 

    enum 枚举的名字{ 枚举元素1, 枚举元素2,...枚举元素n };

 

    enum 枚举的名字 变量名1,变量名2...变量名3;

 

   语法格式分析:

     (1)以enum关键字开始。

     (2)枚举的名字,按变量命名规则定义即可。

     (3)一对大括号,大括号中写上枚举元素,枚举元素之间以逗号分隔,而这些枚举元素就是

        枚举变量可以取值的范围。

     (4)分号表示枚举定义结束。

     (5)通过enum与定义好的枚举名字来定义枚举变量,变量名之间以逗号分隔。  

 

  3、 枚举类型定义的语法格式2

 

    enum  枚举的名字{枚举元素1, 枚举元素2,...枚举元素n }变量名1,..变量名n;

 

   语法格式分析:

     (1)以enum关键字开始。

     (2)枚举的名字,按变量命名规则定义即可。

     (3)一对大括号,大括号中写上枚举元素,枚举元素之间以逗号分隔。

     (4)枚举变量名,变量名之间以逗号分隔。   

     (5)分号表示枚举定义结束。

 

  4、例子:   

     enum num { one,two,three,four,five,six,eight,night,ten };  //定义了枚举类型num

     enum num test;  //定义了枚举变量test

     test = one;//枚举变量test的值是one,而one的枚举值是0,原因请看下面的枚举类型的特性。

 

  6、枚举类型的特性总结

 

   (1)枚举类型中定义的枚举元素,默认的情况下,枚举值是从0开始逐1递增。

 

      例如:

        enum num { one,two,three,four,five,six,eight,night,ten };

        enum num test; 

        test = one;  

 

      在例子中的枚举值one是0,two是1,three是2.,所以,test=one就是将0赋值给test。

 

   (2)枚举类型中定义的枚举元素,它里面的值也可以自行定义,而没有自行定义的,则按前一个

      自行定义的值开始,逐1递增。

 

      例如:

        enum num { one=6,two=4,three,four,five,six,eight,night,ten };

        enum num test; 

        test = three;   //three就等于5  

 

      在例子中的枚举值one是6,two是4,而后面的各元素值就逐1递增,four是6,five是7,

      如此类推。

 

   (3)枚举元素其实是常量,所以,不可以对它进行赋值。

            

      例如:

        one = 41; //错误

        two = 77;  //错误

 

   (4)不能将整数直接赋值给枚举变量。

            

      例如:

        enum num { one=6,two=4,three,four,five,six,eight,night,ten };

        enum num test; 

        test = 60;      //错误

        test = (enum num)60; //正确,要通过(enum 枚举名字)进行强制转换。

                      枚举变量test等于60。

 

        test = (enum num)(60-30 ); //正确,要通过(enum 枚举名字)进行强制转换。

                           枚举变量test等于30。

            

   (5)枚举元素可以用于条件判断

 

      例如:

        if ( one > two )

         test = one;

 

=======================================================================

非常好,现在,我们已经掌握了C语言中的(枚举类型)但是,如何去运行用它呢?

所以,我们就需要通过下方的链接,进入到C语言的代码训练中,然后,通过实践去加深对该知识点的理解与运用。

>>>下载训练环境与使用说明(使用真实的开发环境,结合游戏闯关进行 编程训练)