首页 未命名正文

linux编程_C语言之枚举的界说以及测试

云返利网 未命名 2020-05-26 09:06:27 11 0

1:什么是枚举
枚举在C语言中实在就是一些符号常量集,简朴来说,枚举就是界说了一些符号(字符串),这些字符的本质就是int类型的常量,每个符号和一个常量相绑定,那么这个符号就成为了一个自界说的识别码,对编译器来说对枚举的认知就是符号常量所绑定的谁人int类型的数。直白来讲,枚举就是自己界说一些符号,然后这些符号对应int类型的数,对于程序员来讲,这些符号可以辅助程序员明白代码,而对于编译器来讲,编译器是不熟悉我么界说的枚举符号的,编译器只熟悉这个枚举变量所对于的int类型的数
2:枚举的作用

enum ER
{
    error;
    right;
}
int E_or_R(int a , int b)
{
    if(a>b)
    {
        return right;
    }
    else
    {
        return error;
    }
     
}
 
int main(void)
{
    printf("plese input a & b \n");
    scanf("%d%d",&a,&b);
    int c = E_or_R(a , b);
    if(c==right)
    {
        printf("a>b \n");
    }
    else(c==error)
    {
        printf("a<=b \n");
    }
    return 0;
}

如上面的代码所示,我们通过枚举元素right和error来判断函数E_or_R()返回值,这样就可以很直观地看清楚代码,(由于一般人以为函数执行乐成返回1,函数执行失败返回1,然则难免有人写代码时会把函数执行乐成返回0,函数执行失败返回1)。
3:枚举和宏界说的区别
    我们知道,宏界说也是用来标示一些参数,让程序员能更直观地看懂代码的方式,然则枚举和宏界说又有区别,好比宏界说是涣散界说的,而接纳枚举则可以集中界说在一个枚举变量内里,好比我现在要用 SUN MON 等来界说一周的星期
接纳红界说的方式是
#define  SUN 0 
#define  MON 1
......
#define  SAT 6

而接纳枚举的方式
12345678910 enum week
{
    SUN,        // SUN = 0
    MON,        // MON = 1;
    TUE,
    WEN,
    THU,
    FRI,
    SAT,
};

总上所述:
  当我们要界说的常量是一个有限集适时(譬如一星期有7天,譬如一个月有31天,譬如一年有12个月····),最适适用枚举。(实在宏界说也行,然则枚举更好)

C语言枚举测试

【关于云返利网】

云返利网是阿里云、腾讯云、华为云产品推广返利平台,在各个品牌云产品官网优惠活动之外,云返利网还提供返利。您可以无门槛获得阿里云、华为云、腾讯云所有产品返利,在官网下单后就可以领取,无论是自己用、公司用还是帮客户采购,您个人都可以获得返利。云返利网的目标是让返利更多、更快、更简单!详情咨询13121395187(微信同号)