这个SWITCH语句错在哪里了?

来源:百度知道 编辑:UC知道 时间:2024/09/28 14:41:54
switch (exp)
{
case '+':f=N_jia;break;
case '-':f=N_jian;break;
}
error C2050: switch expression not integral
是否可用IF改写呢?

你少了default:

应该这样.::
switch (exp)
{
case "+":f=N_jia;break;
case "-":f=N_jian;break;
default:
//code you write
}

char 也是整型的,它是整型的变形.
所以用'+' ,'-'是对的.

case 语句的条件表达式只能是数值类型

你用的是什么语言?
switch (exp)
{
case "+":f=N_jia;break;
case "-":f=N_jian;break;
}
可以的其实效果是一样的。

C#

程序错误不在这里,在前面,检查一下exp的传值。另外,f和N_jia是什么关系,数据类型是否匹配
反正这个写法本身是没问题的。