c语言中特殊情况下比宏替换更加好用的一种类型

c语言中特殊情况下比宏替换更加好用的一种类型

c语言中特殊情况下比宏替换更加好用的一种类型。

那就是宏替换,在实际编程中,有些数据的取值往往是有限的,只能是非常少量的整数,并且最好为每个值都取一个名字,以方便在后续代码中使用,比如一个星期只有七天,一年只有十二个月,一个班每周有六门课程等。

如果一个变量只有几种可能的值,大家就可以定义为“枚举类型”;所谓“枚举”就是把可能的值一一的列举出来,变量的值只限于列举出来的值的范围。

语法: enum 枚举类型{枚举成员列表}; //其中的枚举成员列表是以逗号“,”相分隔 如: enum week{ Mon, Tues, Wed, Thurs, Fri, Sat, Sun }; 其中:enum为关键字,week为该枚举类型的标记名(标记名:遵循标识符的命名规则); 花括号“{}”中的Mon, Tues, Wed, Thurs, Fri, Sat, Sun称为“枚举元素”或“枚举常量”;

枚举会默认给枚举常量对应的数值比如

enum week{ Mon, Tues, Wed, Thurs, Fri, Sat, Sun }; //该枚举列表中的常量值分别为从0开始递增:0,1,2,3,4,5,6

也可以由我们自己指定数值。

enum week{ Mon=10, Tues=20, Wed=30, Thurs=40, Fri=50, Sat=60, Sun=70 };

也可以指定第一个。剩下的会根据第一个逐步递增。

enum week{ Mon=10, Tues, Wed, Thurs, Fri, Sat, Sun }; //该枚举列表中的常量值从10开始递增:10,11,12,13,14,15,16

我们以上是在创造一个枚举的类型,而不是在定义一个变量,这个大家要记得。

那么我们就可以用我们创造的类型定义变量。

enum week{ Mon = 1, Tues, Wed, Thurs, Fri, Sat, Sun };enum week a = Mon, b = Wed, c = Sat;

或者:

enum week{ Mon = 1, Tues, Wed, Thurs, Fri, Sat, Sun } a = Mon, b = Wed, c = Sat;

要注意的一点是不可以再定义为枚举常量(就是那里面的那些名字 Mon,Tues........)的变量。

大家可以看完后,自己用一用枚举,比如配合switch。

到这里文章就结束了,如果还是不太理解,关注后私信发生“C语言”入群找我解答,另外如果有想学习c语言或者c++的同学们,也可以加群,、方便你们参考、学习和讨论问题。 群内有大量学习资料。

c语言中特殊情况下比宏替换更加好用的一种类型

大家如果觉得我的文章还可以,可以关注,转发,收藏,评论。


分享到:


相關文章: