一个关于枚举型常量的问题
1个回答
展开全部
枚举元素本身由系统定义了一个表示序号的数值,从0开始顺序定义为0,1,2…
,如上,则
是
的值为0,不是的值为
1,他们都是常量,常量是不能赋值的,现在只到你为什么错了吧!
说明:
只能把枚举值赋予枚举变量,不能把元素的数值直接赋予枚举变量。如:
enum
TF{sum,mon};
a=sum;
b=mon;
是正确的。而:
sum=0;
mon=1;
是错误的。如一定要把数值赋予枚举变量,则必须用强制类型转换。
如:
enum
T{a};
enum
M{s,t,k};
a=(enum
M)2;
其意义是将顺序号为2的枚举元素赋予枚举变量a,相当于:
a=tue;
还应该说明的是枚举元素不是字符常量也不是字符串常量,使用时不要加单、双引号。
,如上,则
是
的值为0,不是的值为
1,他们都是常量,常量是不能赋值的,现在只到你为什么错了吧!
说明:
只能把枚举值赋予枚举变量,不能把元素的数值直接赋予枚举变量。如:
enum
TF{sum,mon};
a=sum;
b=mon;
是正确的。而:
sum=0;
mon=1;
是错误的。如一定要把数值赋予枚举变量,则必须用强制类型转换。
如:
enum
T{a};
enum
M{s,t,k};
a=(enum
M)2;
其意义是将顺序号为2的枚举元素赋予枚举变量a,相当于:
a=tue;
还应该说明的是枚举元素不是字符常量也不是字符串常量,使用时不要加单、双引号。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询