This shows you the differences between two versions of the page.
arduino:control_structures:switchcase [2013/02/15 20:45] |
arduino:control_structures:switchcase [2024/02/16 01:04] (current) |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ======switch / case statements ====== | ||
+ | |||
+ | Like **if** statements, **switch...case** controls the flow of programs by allowing programmers to specify different code that should be executed in various conditions. In particular, a switch statement compares the value of a variable to the values specified in case statements. When a case statement is found whose value matches that of the variable, the code in that case statement is run. | ||
+ | |||
+ | The **break** keyword exits the switch statement, and is typically used at the end of each case. Without a break statement, the switch statement will continue executing the following expressions ("falling-through") until a break, or the end of the switch statement is reached. | ||
+ | |||
+ | |||
+ | ===== Example ===== | ||
+ | <code arduino> | ||
+ | switch (var) { | ||
+ | case 1: | ||
+ | //do something when var equals 1 | ||
+ | break; | ||
+ | case 2: | ||
+ | //do something when var equals 2 | ||
+ | break; | ||
+ | default: | ||
+ | // if nothing else matches, do the default | ||
+ | // default is optional | ||
+ | } | ||
+ | </code> | ||
+ | |||
+ | ===== Syntax ===== | ||
+ | |||
+ | <code arduino> | ||
+ | switch (var) { | ||
+ | case label: | ||
+ | // statements | ||
+ | break; | ||
+ | case label: | ||
+ | // statements | ||
+ | break; | ||
+ | default: | ||
+ | // statements | ||
+ | } | ||
+ | </code> | ||
+ | |||
+ | ===== Parameters ===== | ||
+ | |||
+ | var: the variable whose value to compare to the various cases | ||
+ | |||
+ | label: a value to compare the variable to | ||
+ | |||
+ | ====See also: ==== | ||
+ | [[arduino:control structures:Else | if...else]] | ||
+ | |||
+ | Source: arduino.cc | ||