代码之家  ›  专栏  ›  技术社区  ›  Shweta

枚举数据类型

  •  2
  • Shweta  · 技术社区  · 15 年前

    它的用途是什么 enum 关键字?在哪里可以使用枚举数据类型? 有人能举例说明吗?

    4 回复  |  直到 13 年前
        1
  •  0
  •   Giuliano    15 年前



    int months[12][30];
    

    months[March][...];
    

    enum myenum {  January = 1, February, March, ..., };
    

        2
  •  6
  •   Jonathan Leffler    15 年前

    enum

    enum { MAX_LINES = 60 };
    

    #define

    #define MAX_LINES 60
    

    typedef enum { RED, GREEN, BLUE } Colour;
    

    typedef unsigned char Pixel[3];
    
    Pixel p;
    
    p[RED]   = 128;
    p[GREEN] = 128;
    p[BLUE]  = 255;
    

        3
  •  0
  •   kalyan    15 年前

    enum type {
     item1,
     item2,
     item3
    };
    

    enum type {
     item1 = 10,
     item2,
     item3
    };
    

    int i=10;
    i += item1;
    

    i = i + 10;
    

    enum type mytype;
    mytype = item1;
    

    mytype = i;
    mytype = mytype + 100;
    

    但在IMO中,枚举应该用作常量,不应该参与算术运算,而应该让编译器自己决定值,而不是赋值。

        4
  •  0
  •   Vijay Mathew Chor-ming Lung    15 年前

    enum boolean { FALSE, TRUE };
    

    除非指定了显式值,否则枚举中的第一个名称具有值0、下一个1等。如果未指定所有值,则未指定的值将继续从上一个指定值开始进行:

    enum months { JAN = 1, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC };
    

    作为一个 char 是使用整数进行内部表示的,您也可以声明指向字符常量的枚举:

    enum whitespaces { SPACE = ' ', TAB = ’\t’, NEWLINE = ’\n’, RETURN = ’\r’ };
    

    #define