// An example program to demonstrate working // of enum in C #includeenum week{Mon, Tue, Wed, Thur, Fri, Sat, Sun}; int main() { enum week day; day = Wed; printf("%d",day); return 0; }
#includeenum year{Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec}; int main() { int i; for (i=Jan; i<=Dec; i++) printf("%d ", i); return 0; }
#includeenum day {sunday, monday, tuesday, wednesday, thursday, friday, saturday}; int main() { enum day d = thursday; printf("The day number stored in d is %d", d); return 0; }
The day number stored in d is 4
#includeenum day {sunday = 1, monday, tuesday = 5, wednesday, thursday = 10, friday, saturday}; int main() { printf("%d %d %d %d %d %d %d", sunday, monday, tuesday, wednesday, thursday, friday, saturday); return 0; }
enum state {working, failed}; enum result {failed, passed}; int main() { return 0; }
我们也可以使用宏定义名称常量。例如,我们可以使用以下宏定义“工作”和“失败”。
#define Working 0
#define Failed 1
#define Freezed 2
|
当许多相关的命名常量具有积分值时,使用枚举超过宏有多个优点。
a)枚举遵循范围规则。
b)枚举变量自动分配值。以下更简单
enum
state {Working, Failed, Freezed};
这样对比哪个更简单显而易见,有木有!
|