关闭

字符串如何转化为对应的枚举值 C语言

标签: 字符串如何转化为对应的枚举值枚举字符串c语言转化
144人阅读 评论(0) 收藏 举报
分类:
#include <stdio.h>
#include <string.h>

/* 定义枚举类型 */

enum DAY { MON=0, TUE, WED };

char *dirs[] = { "MON", "TUE", "WED" };//作为映射数组

char mon[] = "MON";//作为输入字符串

enum DAY s2e(char* str)
{
    if(strcmp(str, "MON")==0) return MON;
    if(strcmp(str, "TUE")==0) return TUE;
    if(strcmp(str, "WED")==0) return WED;
    /*...*/
return 8;
}

void main()
{
    /* 使用基本数据类型声明变量同时对变量赋初值 */
    int x=10, y=20, z=30;

    /* 使用枚举类型声明变量同时对枚举型变量赋初值 */
    enum DAY yesterday = s2e(mon), //可以用于switch-case语句
                        today = TUE,
                  tomorrow = WED;
    printf("%s %s %s \n", dirs[yesterday], dirs[today], dirs[tomorrow]);

}
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:918次
    • 积分:86
    • 等级:
    • 排名:千里之外
    • 原创:8篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档