[Control Structures]
Description
if/else allows greater control over the flow of code than the basic if statement by allowing multiple tests to be grouped. For example, an analog input could be tested and one action taken if the input was less than 500, and another action taken if the input was 500 or greater.
Example Code
if (pinFiveInput < 500) { // action A } else { // action B }
else
can proceed another if
test, so that multiple, mutually exclusive tests can be run at the same time.
Each test will proceed to the next one until a true test is encountered. When a true test is found, its associated block of code is run, and the program then skips to the line following the entire if/else construction. If no test proves to be true, the default else
block is executed, if one is present, and sets the default behavior.
Note that an else if
block may be used with or without a terminating else
block and vice versa. An unlimited number of such else if
branches is allowed.
if (pinFiveInput < 500) { // do Thing A } else if (pinFiveInput >= 1000) { // do Thing B } else { // do Thing C }
Another way to express branching, mutually exclusive tests, is with the switch case
statement.
See also
- [Language] switch case
Language Reference Home
The text of the 86Duino reference is a modification of the Arduino reference and is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.