Chapter 7. Switching Paths

In This Chapter

  • Using the switch keyword to choose between multiple paths

  • Taking a default path

  • Falling through from one case to another

Often programs have to decide between a very limited number of options: Either m is greater than n or it's not; either the lug nut is present or it's not. Sometimes, however, a program has to decide between a large number of possible legal inputs. This could be handled by a series of if statements, each of which tests for one of the legal inputs. However, C++ provides a more convenient control mechanism for selecting among a number of options known as the switch statement.

Controlling Flow with the switch Statement

The switch statement has the following format:

  case const1:
    // go here if expression == const1

  case const2:
    // go here if expression == const2

  case const3:         // repeat as often as you like
    // go here if expression == const3

    // go here if none of the other cases match

Upon encountering the switch statement, C++ evaluates expression. It then passes control to the case with the same value as expression. Control continues from there to the break statement. The break transfers control to the } at the end of the switch statement. If none of the cases match, control passes to the default case.

The default case is optional. If the expression doesn't match any case and no default case is provided, control passes immediately to the }.

Consider the following example code snippet: ...

Get Beginning Programming with C++ For Dummies® now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.