c/c++ enum枚举类型及其遍历

2026-01-04 21:19:40 3866

我们以一年有四个季节进行枚举实例

c:

enum Season

{

SPR = 0,

SUM,

AUT,

WIN, //最后一个逗号可以不加

}; //结尾必须加;

注意:第一个枚举成员的默认值为整型的 0,后续枚举成员的值在前一个成员上加 1。如果我们想从1开始,那么我们可以将第一个SPR = 1,这样我们可以达到1,2,3,4的排列顺序。当然,如果我们将SUM = 3,我们可以得到0,3,4,5这样的顺序。

调用实例

enum Season s = 2;//可以使用数字也可以使用 AUT

if(s == 2)

{

printf("这是秋天");

}

c++在使用enum类型跟c的区别

c++:

enum Season

{

SPR = 0,

SUM,

AUT,

WIN,

};

int main()

{

enum Season s = AUT; //c++不能使用数字进行赋值

if(s == AUT)

{

std::cout<<"这是秋天"<

}

}

enum进行遍历

c:

enum Season

{

SPR = 0,

SUM,

AUT,

WIN,

} s;

int main()

{

for (s = SPR;s<=WIN;s++)

{

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

}

}

区别于c代码的遍历,c++不能直接使用int型

c++:

enum Season s;

for (s = SPR; s <= WIN; s= (Season)(s + 1))

{

std::cout<

}

当然在遍历中,如何enum类型中的变量不是默认顺序,则遍历可能无法实现。