标签:
通过上边的定义 我们可以写出枚举的基本写法(ps: [] 代表可选);
1. 声明 使用
enum Weekday { sun, mon, tue, wed, thu, fri, sat }; // ok enum Weekday weekday,weekend;
2. 声明 使用
enum Weekday { sun, mon, tue, wed, thu, fri, sat }weekday,weekend;
1. 我们举个例子说明
#include <stdio.h> enum Weekday { sun = 7, mon = 0, tue = 1, wed = 3, thu, fri, sat }weekday,weekend; int main(int argc, char *argv[]) { printf("%d\n",weekday=sun); printf("%d\n",weekday=mon); printf("%d\n",weekday=tue); printf("%d\n",weekday=wed); return 0; }
我们 总结一下陈词:
#include <stdio.h> enum Weekday { sun = 7, mon = 0, tue = 1, wed = 3, thu, fri, sat }one,two,three; int main(int argc, char *argv[]) { one = mon; two = tue; three = wed; printf("%d %d %d\n",one,two,three); return 0; }
1. 因为枚举值是常量,不能赋值,所以下面的写法是错误的
sun = 5; mon = 2;
只能把枚举值赋予枚举变量,例如:
a = sun;
b = sat;
2.同时,不建议把数值直接赋给枚举变量,例如
a= 1; b= 6;
如果一定要使用数值,必须使用强制类型转换:
a = (enum week)1; b = (enum week)6;
因为已经使用了 sun、mon…sat 几个标识符,所以不能再使用它们来定义变量等,例如:
int sun = 3; char mon;
都是错误的。
标签:
原文地址:http://www.cnblogs.com/causal360/p/4740882.html