switch语句中case后面可不可以加字符串?

如题所述

c/c++ 语言 不允许。
c/c++ 语言 case后面 只允许是 整型 常量 表达式,例如:
int k=3;
switch(k){
case 'd'-'a': printf("d-a\n");break;
case 4 : printf("4\n"); break;
case 'Z' : printf("Z\n"); break; //单引号括起的是字符常量,是整型。
}
上面 用的 都是 整型 常量 表达式, 所以正确。
字符串常量,例如:双引号括起的 "Z", 虽然是常量, 但它们不是 整型,所以不允许。
其它语言,要看它们自己的规定。
温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答