枚举类型的使用

来源:互联网 发布:java线程安全的例子 编辑:程序博客网 时间:2024/05/22 17:46
#include <stdio.h>enum WEEK{  MONDAY,TUESDAY,WEDNESDAY,            THURSDAY,FRIDAY,SATURDAY,SUNDAY         };enum WEEK day = MONDAY;int main(int argc, char *argv[]){    printf("%d\n",day);    return 0;}枚举的定义:enum 枚举类型名 { 常量1,常量2...};例:    enum WEEK{  MONDAY,TUESDAY,WEDNESDAY,            THURSDAY,FRIDAY,SATURDAY,SUNDAY         };使用 enum WEEK day = MONDAY;默认 枚举里面的值是从0开始的        MONDAY = 0        TUESDAY = 1 等依次类推        如果想改变这种赋值方式可以使用        enum WEEK{  MONDAY=4,TUESDAY,WEDNESDAY=2,            THURSDAY=14,FRIDAY,SATURDAY,SUNDAY         };         则MONDAY=4    TUESDAY=5   WEDNESDAY=2   THURSDAY=14   FRIDAY=15  SATURDAY=16         SUNDAY=17这样赋值得枚举和宏定义之间的区别和联系    第一         作用时间和存储方式不同        宏是在预处理阶段完成 而 枚举是在运行阶段 枚举会进行类型的检查        宏不分配内存空间 而 枚举存储在数据的静态存储区中  这点一定要注意    第二        枚举一次可以定义许多值 如 四季等 而宏一次只能定义一个    用sizeof 测枚举常量 大小都是4 默认是int 类型
0 0