是' ......' symbol是一个c语言关键字?
代码:
#include <stdio.h>
typedef enum {
A=0,B,C,D,E,F,G,H,I,J,K,M
} alpha;
int main(int argc, char const *argv[])
{
alpha table = C;
switch (table)
{
case A ... D:
/* I have never seen "..." grammar in textbook */
printf("Oh my god\n");
break;
default:
printf("default\n");
break;
}
return 0;
}
C中是否允许...
范围?
答案 0 :(得分:2)
它不是标准C,而是GCC扩展名:
中的更多内容您可以在单个案例标签中指定一系列连续值,如下所示:
case low ... high:
这与适当数量的单个案例标签具有相同的效果,每个整数值从低到高,包括一个。
答案 1 :(得分:1)
这称为案例范围。不,这是不标准C功能。
它实现为gcc extension。这只是使用fall-through case
statement的另一种方式。