精华内容
下载资源
问答
  • C语言枚举

    2016-03-04 20:45:00
    值得注意的是,这里面的枚举变量可以赋初值。 但是感觉会出问题。 就是每一个枚举中的值,都有一个非负整数与他对应。 例如我们的季节,那么初试的默认值的对应就是0,1,2,3。 可以打印一下: ...

    应该是 各种语言都支持枚举的。

     

    所以这个 之前在我们java案例里面就出现过的季节代码再次出现了。

     

    枚举帮我们起到一个变量值,在某一范围内的限定,用来避免一些非法值的键入。

    值得注意的是,这里面的枚举变量可以赋初值。

    但是感觉会出问题。

    就是每一个枚举中的值,都有一个非负整数与他对应。

    例如我们的季节,那么初试的默认值的对应就是 0,1,2,3

    可以打印一下:

    赋一下值:

     

    这是赋了值的结果,summerwinter拥有同样的,数字标识,感觉在判定上会出问题。

    所以感觉会出问题,就是出了问题。

     

    所以这个默认值一般是不要去动的,除非就是想做一些什么东西。

     

    转载于:https://www.cnblogs.com/letben/p/5243384.html

    展开全文
  • C语言枚举类型

    2015-11-08 12:43:23
    C语言提供了一种枚举(Enum)类型,可以列出所有可能的取值。定义形式为: enum 变量名{ 枚举值列表 }; 这些值也称为枚举元素。注意最后的分号;不能少。 例如,列出一个星期有几天: enum week{sun, mon, tue, wed...
    实际问题中,有些变量的取值被限制在一定范围内。例如,一个星期内只有七天,一年只有十二个月,一个班每周有六门课程等。

    C语言提供了一种枚举(Enum)类型,可以列出所有可能的取值。定义形式为:
    enum 变量名{ 枚举值列表 };
    这些值也称为枚举元素。注意最后的分号;不能少。

    例如,列出一个星期有几天:
    enum week{sun, mon, tue, wed, thu, fri, sat};
    和结构体一样,枚举变量可以先定义后说明,也可以在定义的同时说明,例如:
    enum week a, b, c;
    或者:
    enum week{sun, mon, tue, wed, thu, fri, sat} a, b, c;
    枚举值为常量,不是变量,不能赋值。枚举值默认从0开始,逐个加1。也就是说,上面的代码定义了7个常量,分别为 sun、mon…sat,它们的值分别为 0、1…6。

    【示例】枚举的使用。

    #include <stdio.h>
    int main(){
        enum week{
            sun, mon, tue, wed, thu, fri, sat
        } a, b, c;
        a = sun;
        b = mon;
        c = tue;
        printf("%d, %d, %d\n",a,b,c);
        return 0;
    }


    运行结果:

    0, 1, 2

    因为枚举值是常量,不能赋值,所以下面的写法是错误的:
    sun = 5;
    mon = 2;
    只能把枚举值赋予枚举变量,例如:
    a = sun;
    b = sat;
    同时,不建议把数值直接赋给枚举变量,例如:
    a = 1;
    b = 6;
    如果一定要使用数值,必须使用强制类型转换:
    a = (enum week)1;
    b = (enum week)6;
    因为已经使用了 sun、mon…sat 几个标识符,所以不能再使用它们来定义变量等,例如:
    int sun = 3;
    char mon;
    都是错误的。
    展开全文
  • 解题思路:不怎么了解枚举,不知道怎么直接在scanf中用枚举变量,有大神知道的请赐教注意事项:参考代码:#include #include int main(){int a,b;scanf("%d%d",&a,&b);enum three{stone=0, cloth, knife}bef,...

    解题思路:

    不怎么了解枚举,不知道怎么直接在scanf中用枚举变量,有大神知道的请赐教

    注意事项:

    参考代码:

    #include

    #include

    int main()

    {

    int a,b;

    scanf("%d%d",&a,&b);

    enum three

    {

    stone=0, cloth, knife

    }bef,aft;

    bef=(enum three)a;

    aft=(enum three)b;

    enum result

    {

    lose=-1, ping, win

    }res;

    if(bef-aft==1||bef-aft==-2){

    res=(enum result)1;

    printf("%d\n",res);

    }

    if(bef-aft==0){

    res=(enum result)0;

    printf("%d\n",res);

    }

    if(bef-aft==-1||bef-aft==2){

    res=(enum result)-1;

    printf("%d\n",res);

    }

    return 0;

    }

    展开全文
  • 在Go语言中和C语言一样可以通过const来定义常量2.变量的格式:const 变量名称 数据类型 = 值;注意点:1.数据类型可以省略, 但是const不能省略const num int = 666const num = 6662.定义常量不能使用 := , := 是专门...

    常量

    1.在Go语言中和C语言一样可以通过const来定义常量

    2.变量的格式:

    const 变量名称 数据类型 = 值;

    注意点:

    1.数据类型可以省略, 但是const不能省略

    const num int = 666

    const num = 666

    2.定义常量不能使用 := , := 是专门用于定义局部变量的

    const num := 666 //语法错误

    3.定义局部变量没有使用, 编译会报错, 定义全局变量和常量没有使用, 不会报错

    4.在Go语言中可以连续定义多个变量, 所以也可以连续定义多个常量

    格式:

    const 变量名称1, 变量名称2 数据类型 = 值1, 值2;

    const a, b, c int = 10, 20, 30

    const a, b, c = 10, 20, 30

    const(

    变量名称1 数据类型 = 值1

    变量名称2 数据类型 = 值2

    )

    const(

    a int = 10

    b int = 20

    c int = 30

    )

    //const(

    // a = 10

    // b = 20

    // c = 30

    // )

    常量组的注意点:

    在常量组中, 如果常量没有赋值, 那么默认值就是上一行的取值

    const(

    a = 666

    b = 789

    c

    )

    fmt.Printf("%d, %d, %d", a, b, c) //666,789,789

    const(

    a, b = 10, 20

    c, d

    )

    fmt.Printf("%d, %d\n", a, b) //10,20

    fmt.Printf("%d, %d\n", c, d)// 10,20

    枚举常量

    1.在C语言中的枚举本质就是一个整数

    格式:

    enum 枚举名 {

    枚举元素1 = 值,

    枚举元素2 = 值,

    ……

    };

    2.Go语言中没有明确枚举的固定写法, 但是在企业开发中一般都会以常量组的形式来表示枚举

    格式:

    const(

    枚举元素 = 值

    枚举元素 = 值

    )

    const(

    male = 0

    female = 1

    )

    注意点:

    1.iota迭代器, 默认会从0开始递增

    const(

    male = iota

    female = iota

    yao = iota

    )

    fmt.Printf("%d\n", male) // 0

    fmt.Printf("%d\n", female) // 1

    fmt.Printf("%d\n", yao) // 2

    2.只要常量组中出现了iota, 该常量组中后续的常量都会一次递增1

    const(

    male = iota

    female

    yao

    )

    fmt.Printf("%d\n", male) // 0

    fmt.Printf("%d\n", female) // 1

    fmt.Printf("%d\n", yao) // 2

    3.如果常量组中的iota被打断了, 那么就不会继续递增了, 会按照常量组的默认方式处理(上一行的值)

    const(

    male = iota

    female = 666

    yao

    )

    fmt.Printf("%d\n", male) // 0

    fmt.Printf("%d\n", female) //666

    fmt.Printf("%d\n", yao) // 666

    4.如果常量组中的itoa被打断了, 但是后续又被回复了, 那么前面有多少行就会递增多少

    const(

    male = iota

    female = 666

    yao = iota

    )

    fmt.Printf("%d\n", male) // 0

    fmt.Printf("%d\n", female) // 666

    fmt.Printf("%d\n", yao) // 2

    //定义一个变量num

    var num int = male

    fmt.Printf("%d\n", num) // 0

    展开全文
  • C语言-枚举

    2014-10-13 16:07:49
    一、枚举的概念二、枚举类型的定义三、枚举变量的定义四、枚举使用的注意五、枚举变量的基本操作 说明:这个C语言专题,是学习iOS开发的前奏。也为了让有面向对象语言开发经验的程序员,能够快速上手C语言。如果...
  • C语言枚举详解

    2020-04-11 15:32:12
    枚举详解语法格式使用枚举类型对变量进行声明枚举声明的注意事项枚举变量的赋值赋值使用案例综合使用 在程序中,可能需要为某些整数定义一个别名,我们可以利用预处理指令#define来完成这项工作。 #define MON 1 #...
  • C语言 22-枚举

    2014-09-27 14:59:00
    三、枚举变量的定义 四、枚举使用的注意 五、枚举变量的基本操作  说明:这个C语言专题,是学习iOS开发的前奏。也为了让有面向对象语言开发经验的程序员,能够快速上手C语言。如果你还没有编程经验,...
  • C语言笔记】枚举

    2020-09-14 09:17:02
    1、如果一个变量只有几种可能的值,则可以定义为“枚举类型”;所谓“枚举”就是把可能的值一一的列举出来,变量的值只限于列举出来的值的范围, 如: ...比如c中的枚举变量允许使用++运算符,但是c++
  • 局部变量与全局变量  按照作用域不同将变量... 注意点:内部代码块中定义与外部代码块中的同名变量,那么内部代码中变量会覆盖外部代码块中定义的变量  局部变量只有定义没有声明    全局变量:定在函数外部变
  • C语言】22-枚举

    2018-01-25 09:46:37
    一、枚举的概念二、枚举类型的定义三、枚举变量的定义四、枚举使用的注意五、枚举变量的基本操作 说明:这个C语言专题,是学习iOS开发的前奏。也为了让有面向对象语言开发经验的程序员,能够快速上手C语言。如果...
  • 1.由于C语言里定义枚举变量时,如这样enum var_enum {a ,b ,c} 则使用的时候不能直接用 var_enum xx; 而是要enum var_enum xx; 所以下面的代码和引用文章的代码有一点差别。 2.宏定义里#号将记号转化为字符串。 详细...
  • 首先对于这三个我们在熟悉不过...对于枚举变量而言和全局const常变量都是在只读数据段放着注意(const 变量没初始化只是在bss段放着可以指针修改内存) 具体而言const修饰的是常变量 emnu修饰的是枚举量都是在只读数据段
  • 同时定义变量3.2 定义时省去类型名,直接要变量3.3 定义时先定义枚举类型名,后定义变量04、枚举的本质05、宏与枚举的区别06、枚举在Linux内核和标准库中的广泛应用6.1 Linux内核6.2 标准库中07、枚举使用的注意事项...
  • 一个枚举变量的值只能取该类型定义的几个枚举常量,可以将枚举常量或枚举变量赋给一个枚举变量,但不能将一个整数赋给它 枚举值可比较大小,按序号比较 枚举值不能直接输入和输出,输入一般通过序号转换,输出则一般...
  • 二者的区别二、常量字面常量const修饰的常变量#define定义的标识符常量enum枚举常量总结 前言 今天要说的这哥俩,是所有的程序里不可或缺的元素之一,所有程序中一定都能看到这哥俩的影子。是它,是它,是它,就是...
  • enum 声明枚举类型 sizeof 计算数据类型或变量长度(即所占字节数) struct 声明结构体类型 typedef 用以给数据类型取别名 signed 声明有符号类型变量或函数 unsigned 声明无符号类型变量或函数 ...
  • 一:1>结构体的概念:  构造类型是一组功能相同的,若干个“成员”或者“元素”组成的集合。  数组也是构造类型,指一组... 注意:结构体定义完成以后,并不会分配存储空间  1)定义结构体变量的几种方法 ...
  • 枚举是一种类型,通过它可以定义枚举变量 比如:enum week{ Mon = 1, Tues, Wed, Thurs, Fri, Sat, Sun } 枚举和宏其实非常类似:宏在预处理阶段将名字替换成对应的值,枚举在编译阶段将名字替换成对应的值。我们...
  • 当我们定义的变量只有固定的几个取值时要使用枚举类型,但是由于c语言是若语法,即使取了枚举类型定义外的值也不会报错,也不会有警告,但为什么还要使用枚举类型呢,便于程序员间的交流,提高代码阅读性 ...
  • 最近在写数据结构的广义表时候用到了这个概念,在学习C语言的时候没有太注意们这里学一下。 我在网上结合了很多资料,这里自己总结一下。 首先说,JAVA和C++中都有枚举类型。   如果一个变量你需要几种...
  • 注意:本篇内容知识大多为理论知识,如觉得生涩难懂也没关系,下一节将会以实际示例出发学习这些理论知识。 二、了解C语言程序的基本数据类型 在C语言编程中,系统定义了多种数据类型,本节将讲解基本数据类型的...
  • 近期在写数据结构的广义表时候用到了这个概念,在学习C语言的时候没有太注意们这里学一下。 我在网上结合了非常多资料,这里自己总结一下。 首先说。JAVA和C++中都有枚举类型。 假设一个变量你须要几种可能...
  • C语言中的常量、变量区分

    千次阅读 2018-06-18 23:20:32
    常量一旦赋值就不能改变的标识符叫做常量。...2)#define定义的标识符常量3)枚举enum 常量变量 变量不用过多解释它分为局部变量、全局变量注意const定义的标识符不是常量,它只是给变量增加了常量的属性。...

空空如也

空空如也

1 2 3 4 5 ... 11
收藏数 205
精华内容 82
关键字:

c语言枚举变量注意

c语言 订阅