在 C++ 中将 if, else if, else 语句转换为 switch 语句
converting an if, else if, else statement into a switch statement in c++
我想知道是否可以将下面的if else语句转换为c ++中的switch语句。如果可以的话,有人可以告诉我怎么做,因为目前我写它的方式有错误。
这是我尝试转换为开关语句的 if else 语句。
if ( t>=10 && t <=18 ) {
blue=0; green=1; red=1;
xb_led=0; xg_led=1; xr_led=1;
} else if ((t >18 && t<=22)||(t>22 && t<=25)) {
green=0; blue=1; red=1;
xg_led=0; xb_led=1; xr_led=1;
} else {
red=0; green=1; blue=1;
xr_led=0; xg_led=1; xb_led=1;
}
这是我已将其转换为的内容,但是出现错误。
switch(t) {
case t >=10 && t<=18:
blue=0; green=1; red=1;
xb_led=0; xg_led=1; xr_led=1;
break;
case t >18 && t<=22|| t>22 && t<=25:
green=0; blue=1; red=1;
xg_led=0; xb_led=1; xr_led=1;
break;
case t >25:
red=0; green=1; blue=1;
xr_led=0; xg_led=1; xb_led=1;
break;
}
Switch 语句案例不会仅基于标签执行。将案例标签值与开关值进行比较以相等,在这种情况下,这没有多大意义,因为我们会有t == (t >=10 && t<=18)
这样的比较。对于您的用例,我会坚持使用if其他。
相关文章:
- 我的简单if-else语句是如何无法访问的代码
- 线程,如果else语句,都是错误的上下文切换后,会发生什么
- 如果 else 语句不断循环
- C++ If/Else 语句被跳过
- 如果条件不相关,我应该更喜欢两个 if 语句而不是 if-else 语句吗?
- 如何将 if else 语句重写为 switch 语句
- 在 C++ 中的 if-else if- else 语句期间更改变量
- 为什么我的 if else 语句不起作用并从数组中输出正确的索引?
- 我的 If Else 语句无法在向量 (C++) 中提供最大值
- 如果 else 语句使用大写和小写字母
- 为什么无论输入如何,所有 if-else 语句都会打印?
- 嵌套的 else 语句 c++
- 为什么切换 if else 语句的顺序会导致错误?
- 如何使用 if else 语句
- if/else 语句输出由于加号或减号而未显示正确的消息
- if-else 语句仅按特定顺序工作,我不知道为什么
- 试图避免在 for 循环中出现 if-else 语句,但代码似乎有一些错误
- 如何在C++中为 if 和 else 语句定义新行为
- 如何在 if-else 语句中使用 C++20 的可能/不太可能属性
- While循环和if/else语句工作不正常