2019-07-21 08:36发布
peng1554 发表于 2018-10-23 19:40 不能那样用。宏不能当初变量被赋值
我是一名新手 发表于 2018-10-23 19:47 我直接把它当成普通变量来定义不可以吗?
最多设置5个标签!
首先看这些宏用在什么地方
[mw_shl_code=c,true] if(key)
{
switch(key)
{
case WKUP_PRES: //控制蜂鸣器
BEEP=!BEEP;
break;
case KEY2_PRES: //控制LED0翻转
LED0=!LED0;
break;
case KEY1_PRES: //控制LED1翻转
LED1=!LED1;
break;
case KEY0_PRES: //同时控制LED0,LED1翻转
LED0=!LED0;
LED1=!LED1;
break;
}
}else delay_ms(10); [/mw_shl_code]
查查switch用法 case后面应该用什么?
case 后的常量指的是常量表达式,它必须是整数类型。在一个特定的 switch 语句中,每个 case 常量都必须具有独一无二的值,不可以重复。但是 switch 语句可以包含多个 case 标签。
而你呢?????却把它弄成变量!!!!
我直接把它当成普通变量来定义不可以吗?
如果非要这样,
应该也没有问题。
只不过这两种意义截然不同,
原作是宏定义,符号替换;
后者是定义变量并赋值
一周热门 更多>