枚举类型字符化输出的方法

 方法一:

 用函数(简单的应用场景下)

方法二:

用字符串转换

//创建枚举类型
enum athleteName {
    WANG, ZHOU, SU, CHO,
    KIM, LI, MIRE, BOUTIN
};

//创建结构体
struct athlete {
    int num;
    athleteName name;
    string sName;          //用于将枚举类型进行字符化转化
    string country;
    int age;
    float grade;

};

//创建结构体数组
athlete arr[8] = {
    {1, WANG, "","CHN", 20,0},
    {25, ZHOU,"", "CHN", 18,0},
    {36, SU, "","NED", 19,0},
    {77, CHO, "","KOR", 23,0},
    {58, KIM, "","KOR", 26,0},
    {69, LI, "","CHN", 17,0},
    {111, MIRE,"", "JPN", 19,0},
    {99, BOUTIN,"", "CAN", 19,0}
};

//枚举类型字符化
    for (int i = 0; i < 8; i++) 
    {
        switch (arr[i].name) {
        case 0:
            arr[i].sName = "WANG";
            break;
        case 1:
            arr[i].sName = " ZHOU ";
            break;
        case 2:
            arr[i].sName = " SU ";
            break;
        case 3:
            arr[i].sName = " CHO ";
            break;
        case 4:
            arr[i].sName = " KIM ";
            break;
        case 5:
            arr[i].sName = " LI ";
            break;
        case 6:
            arr[i].sName = " MIRE ";
            break;
        case 7:
            arr[i].sName = " BOUTIN ";
            break;
        }
    }

此方法用于不得不使用枚举类型和数组结合时的不时之需

正常情况下直接用字符串好很多

唔......真的还没体会到枚举类型存在的意义

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值