C语言enum枚举类型

 enum格式

enum 枚举类型名 {枚举常量1,枚举常量2,……};

举例

enum Leixingming {I,J,K,L};

enum TYPE {OK,READY,WAIT,HOLD,END};

 枚举常量是有默认值的,第一个常量默认为0。例如TYPE中OK是0,READY是1,……

也可以设置自定义的常量值,类型需要为整型,不能超出范围。未定义的常量会根据排序自动+1。

enum允许多个常量为相同值,例如

enum TYPE {OK=1,READY=3,WAIT=3,HOLD=4,END=4};

enum赋值

enum 枚举类型名 枚举变量名 = 枚举常量1;

enum TYPE statu = OK;

 

enum应用在switch中

enum对于多类型、多状态的状态机判断非常方便。先定义不同状态,再switch排列,或者直接将enum变量作为函数参数引用使用。比单纯用0、1、2、3的整型判断好。

enum TYPE {
    OK,
    READY,
    WAIT,
    HOLD,
    END};

enum TYPE statu = HOLD;

switch(statu) 
{
    case OK:
        ……
    case READY:
        ……
    case END:
        ……
    default:break;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值