c 中error C2051 case expression not constant是什么意思(c2051)

2023-03-24 5:51:00 指南信息 梁佰亿

这句话的意思是

case语句中的表达式不是常量

case

里需要的则必须是一个编译器常量,编译时就已经明确知道的值,例如给定一个UINT字面量。

比如

's'才是常量(单引号)

,"s"

这样就是字符串了(双引号)。解决方法是把所有的case

表达式用单引号。

C语言错误error C2051: case expression not constant,求解!!

#include stdio.h

main ()

{

char c;

int a,b,d,e,i;

for(i=1;i=6;i++)

{

scanf("%c %d",c,a);//加上取地址附

switch (c)

{

case 'A':b=b+a;break;//直接这样就可以来了

case 'B':d=d+a;break;

case 'C':e=e+a;break;

default:printf("没有找到")//break也不需要

}

}

printf("A公司的物流总价是%d元。\nB公司的物流总价是%d元。\nC公司的物流总价是%d元。\n",b,d,e);

return 0;

}

c2051(c2051单片机四位数码管时钟程序) 第1张

c2051次列车是复兴号吗

这趟车是复兴号车次:C2051

发站:北京南(13:22)

到站:天津(13:52)

历时:00:30

二等:54.5

一等:88

硬卧:—/—/—

软卧:—/—

error c2051跳过=

这是错误代码,意思:将“”修改为‘’。

很明显根据提示可以知道,错误,errorC2051:caseexpressionnotconstant。

,case表达式应为常量表达式,例如“case“a””中““a””为字符串,这是非法的。

发表评论: