C代码中的开关大小写是“…”
这是/usr/src/linux-3.10.10-1-ARCH/include/linux/printk.h的一段代码: 
 static inline int printk_get_level(const char *buffer) { if (buffer[0] == KERN_SOH_ASCII && buffer[1]) { switch (buffer[1]) { case '0' ... '7': case 'd': /* KERN_DEFAULT */ return buffer[1]; } } } 
这是一种运营商吗? 为什么“C程序devise语言”没有提到它?
 这是一个名为范围的gcc 扩展 ,这是如何在文档中解释的: 
您可以在单个案例标签中指定一系列连续值,如下所示:
case low ... high:
 你可以在这里find一个完整的gcc扩展列表。 看来铛也支持这个尝试和gcc保持兼容。 在gcc或clang使用-pedantic标志会警告您这是非标准的,例如: 
 warning: range expressions in switch statements are non-standard [-Wpedantic] 
有趣的是, Linux内核使用了大量的gcc扩展 ,文章中未涉及的扩展之一就是语句expression式。
这是gcc编译器扩展,允许在一行中结合几个case语句。
当心,这不是标准C,因此不便携。 这是一个简短的案例陈述。 这是因为在C中,你只能打开整型。
 在标准C中, ...仅用于可变长度参数列表中。 
情况'0'…'7':是范围范围在gcc speciacation 。
case语句的范围说明。
在……周围写空格,否则在整数值中使用时可能会parsing错误
 case '0' or case '1' or case '3' and so on case '7': or case 'b' : just return buffer[1];