如何初始化一个Enum变量?例如:
enum RANK{First=1,Second,Third};
main()
{
RANK r=0;
int marks=0;
printf("Enter the marks obtained\n");
scanf("%d",&marks);
if(marks>=90)
r=First;
else if(marks>=80)
r=Second;
else
r=Third;
printf("Rank=%d\n",r);
}
上面的代码给出了错误,表明不能用RANK r = 0中的整数值来初始化枚举。但是我不明白为什么尽管枚举值是整数类型也会产生此错误。
枚举的语法应修改。
typedef enum {First=1,Second,Third} RANK;
RANK my_RANK = First;
如果您不想使用typedef,请使用此
enum RANK {First=1,Second,Third};
enum RANK my_RANK = First;
也可以这样使用
enum { First=1,Second,Third } RANK = FIRST;
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句