Ami*_* A. 4 c int enums integer constants
之间有什么区别
enum week{Mon, Tue, Wed, Thur, Fri, Sat, Sun};
enum week day = Wed;
Run Code Online (Sandbox Code Playgroud)
和
enum week{Mon, Tue, Wed, Thur, Fri, Sat, Sun};
int day = Wed;
Run Code Online (Sandbox Code Playgroud)
在 C?
我找不到使用类型变量而enum不是使用常规int.
好处是使用 aenum使您的意图更加清晰,无论是阅读您的代码的人还是编译器。例如,如果您使用具有不完整switch案例的枚举,任何中途体面的编译器都会警告您:
switch (day) {
case Mon: printf("Monday\n"); break;
case Tue: printf("Tuesday\n"); break;
}
Run Code Online (Sandbox Code Playgroud)
这里 GCC (with -Wall) 发出:
警告:枚举值“Wed”未在开关 [-Wswitch] 中处理
Run Code Online (Sandbox Code Playgroud)7 | switch (day) { | ^~~~~~…
如果类型day是int,您将不会收到这个非常有用的警告。
| 归档时间: |
|
| 查看次数: |
438 次 |
| 最近记录: |