bugl
bugl
HomeLearnPatternsPathsSearchPremium
HomeLearnPatternsPaths
Learn/C++/C++ Tutorial
C++•C++ Tutorial

C++ Switch

C++ Switch Statements

Use the switch statement to select one of many code blocks to be executed.

Syntax

switch( expression ) {
 case x:
 // code block break; case y:
 // code block break; default:
 // code block
}

This is how it works

  • The switch expression is evaluated once
  • The value of the expression is compared with the values of each case
  • If there is a match, the associated block of code is executed
  • The break and default keywords are optional, and will be described later in this chapter

The example below uses the weekday number to calculate the weekday name:

Example

int day = 4;
switch (day) {
  case 1: cout << "Monday";
  break;
  case 2: cout << "Tuesday";
  break;
  case 3: cout << "Wednesday";
  break;
  case
  4: cout << "Thursday";
  break;
  case 5: cout << "Friday";
  break;
  case 6: cout << "Saturday";
  break;
  case 7: cout << "Sunday";
  break;
}
// Outputs "Thursday" (day 4)

The break Keyword

When C++ reaches a break keyword, it breaks out of the switch block.

This will stop the execution of more code and case testing inside the block.

When a match is found, and the job is done, it's time for a break. There is no need for more testing.

A break can save a lot of execution time because it "ignores" the execution of all the rest of the code in the switch block.

The default Keyword

The default keyword specifies some code to run if there is no case match:

Example

int day = 4;
switch (day) {
  case 6: cout << "Today is Saturday";
  break;
  case 7: cout << "Today is Sunday";
  break;
  default: cout << "Looking forward to the Weekend";
}
// Outputs "Looking forward to the Weekend"

Previous

C++ Logical Operators in Conditions

Next

C++ While Loop

This chapter

Overview
64

Lessons

138m

Read time

1. C++ Tutorial2. C++ Introduction3. C++ Getting Started4. C++ Syntax5. C++ Statements6. C++ Output (Print Text)7. C++ Output Numbers8. C++ New Lines9. C++ Comments10. C++ Variables11. C++ Declare Multiple Variables12. C++ Identifiers13. C++ Constants14. C++ User Input15. C++ Data Types16. C++ Numeric Data Types17. C++ Boolean Data Types18. C++ Character Data Types19. C++ String Data Types20. C++ auto21. C++ Operators22. C++ Arithmetic Operators23. C++ Assignment Operators24. C++ Comparison Operators25. C++ Logical Operators26. C++ Operator Precedence27. C++ Strings28. C++ String Concatenation29. C++ Numbers and Strings30. C++ String Length31. C++ Access Strings32. C++ Special Characters33. C++ User Input Strings34. C++ String Namespace35. C++ C-Style Strings36. C++ Math37. C++ Booleans38. C++ Boolean Expressions39. C++ If ... Else40. C++ Else41. C++ Else If42. C++ Short Hand If Else43. C++ Nested If44. C++ Logical Operators in Conditions45. C++ Switch46. C++ While Loop47. C++ Do/While Loop48. C++ For Loop49. C++ Nested Loops50. C++ The foreach Loop51. C++ Break and Continue52. C++ Arrays53. C++ Arrays and Loops54. C++ Omit Array Size55. C++ Array Size56. C++ Multi-Dimensional Arrays57. C++ Structures (struct)58. C++ Enumeration (enum)59. C++ Memory Address60. C++ Pointers61. C++ Dereference62. C++ Modify Pointers63. C++ Memory Management64. C++ new and delete

On this page

C++ Switch StatementsThe break KeywordThe default Keyword