“If/else”的版本间的差异
来自YFRobotwiki
| 第1行: | 第1行: | ||
| − | '''if/else''' | + | '''if/else''' 通过允许多个测试组合在一起,相对基本if语句,允许更大的控制流。例如,可测试一个模拟量输入值,如果值小于500则执行一个动作,而如果输入值大于等于500则执行另一个动作。代码如下: |
<pre style="color:dimgray"> | <pre style="color:dimgray"> | ||
| 第14行: | 第14行: | ||
| − | else | + | '''else''' 中可以进行另一个 if 测试,这样多个互斥的测试可以同时运行。 |
| + | 每个测试都将依次被执行知道遇到一个测试为真为止。当发现一个测试条件为真时,与其相关的代码将执行,然后程序将跳至完整的 if/else 结构体的下一行语句。如果没有一个测试为真,如果存在else语句块,则默认执行。 | ||
| − | + | <font color="red">'''注意:'''</font>一个else if 语句有没有else语句块都可以使用。允许无限制数量的 else if 分支。 | |
| − | + | ||
| − | + | ||
<pre style="color:dimgray"> | <pre style="color:dimgray"> | ||
| 第36行: | 第35行: | ||
</pre> | </pre> | ||
| − | + | 另一种表达多分支互斥的判断语句是 [[switch case]] 语句。 | |
2015年8月18日 (二) 21:22的最后版本
if/else 通过允许多个测试组合在一起,相对基本if语句,允许更大的控制流。例如,可测试一个模拟量输入值,如果值小于500则执行一个动作,而如果输入值大于等于500则执行另一个动作。代码如下:
if (pinFiveInput < 500)
{
// action A
}
else
{
// action B
}
else 中可以进行另一个 if 测试,这样多个互斥的测试可以同时运行。
每个测试都将依次被执行知道遇到一个测试为真为止。当发现一个测试条件为真时,与其相关的代码将执行,然后程序将跳至完整的 if/else 结构体的下一行语句。如果没有一个测试为真,如果存在else语句块,则默认执行。
注意:一个else if 语句有没有else语句块都可以使用。允许无限制数量的 else if 分支。
if (pinFiveInput < 500)
{
// do Thing A
}
else if (pinFiveInput >= 1000)
{
// do Thing B
}
else
{
// do Thing C
}
另一种表达多分支互斥的判断语句是 switch case 语句。
更多建议和问题欢迎反馈至 YFRobot论坛