C++ Break and Continue

Welcome to The Coding College! In this tutorial, we’ll discuss two powerful statements in C++: break and continue. These are essential tools for controlling the flow of loops, allowing developers to terminate or skip iterations based on specific conditions.

What is the break Statement?

The break statement is used to exit a loop or a switch statement prematurely. Once executed, the control flow jumps out of the nearest enclosing loop or switch.

Syntax

break;

Use Cases

  • Exiting a loop early when a condition is met.
  • Terminating a switch case to prevent fall-through.

Example 1: Using break in a Loop

#include <iostream>
using namespace std;

int main() {
    for (int i = 1; i <= 10; i++) {
        if (i == 5) {
            cout << "Loop stopped at " << i << endl;
            break;
        }
        cout << i << " ";
    }
    return 0;
}

Output:

1 2 3 4  
Loop stopped at 5

Example 2: Using break in a switch Statement

#include <iostream>
using namespace std;

int main() {
    int choice;
    cout << "Enter a number (1-3): ";
    cin >> choice;

    switch (choice) {
        case 1:
            cout << "You chose 1!" << endl;
            break;
        case 2:
            cout << "You chose 2!" << endl;
            break;
        case 3:
            cout << "You chose 3!" << endl;
            break;
        default:
            cout << "Invalid choice!" << endl;
    }

    return 0;
}

Output (if choice = 2):

You chose 2!

What is the continue Statement?

The continue statement skips the current iteration of a loop and proceeds to the next iteration. It is often used when you want to skip certain cases without terminating the entire loop.

Syntax

continue;

Use Cases

  • Skipping specific iterations when a condition is met.
  • Useful for filtering elements during iteration.

Example 1: Using continue to Skip Numbers

#include <iostream>
using namespace std;

int main() {
    for (int i = 1; i <= 10; i++) {
        if (i % 2 == 0) {  // Skip even numbers
            continue;
        }
        cout << i << " ";
    }
    return 0;
}

Output:

1 3 5 7 9

Example 2: Filtering User Input

#include <iostream>
using namespace std;

int main() {
    int number;

    cout << "Enter numbers (negative to skip, 0 to stop): " << endl;
    while (true) {
        cin >> number;

        if (number == 0) {
            cout << "Exiting program." << endl;
            break;
        }

        if (number < 0) {
            cout << "Negative number skipped." << endl;
            continue;
        }

        cout << "You entered: " << number << endl;
    }

    return 0;
}

Output (Sample Interaction):

Enter numbers (negative to skip, 0 to stop):  
5  
You entered: 5  
-3  
Negative number skipped.  
10  
You entered: 10  
0  
Exiting program.

Example: break and continue Together

Let’s combine break and continue to demonstrate their differences.

#include <iostream>
using namespace std;

int main() {
    for (int i = 1; i <= 10; i++) {
        if (i == 5) {
            continue;  // Skip the iteration where i == 5
        }

        if (i == 8) {
            break;  // Terminate the loop when i == 8
        }

        cout << i << " ";
    }

    return 0;
}

Output:

1 2 3 4 6 7

Key Differences Between break and continue

Featurebreakcontinue
PurposeExits the loop entirely.Skips the current iteration.
Control FlowMoves control out of the loop.Moves control to the next iteration.
EffectTerminates the loop immediately.The loop continues execution.

Real-World Use Cases

Using break:

  • Searching for a specific element in a collection and stopping when found.
  • Exiting a loop based on user input or error conditions.

Using continue:

  • Filtering out unwanted values during iteration.
  • Skipping unnecessary computations to improve performance.

Best Practices

  1. Avoid Overusing break and continue: Excessive use can make code harder to read.
  2. Use Descriptive Comments: Explain why break or continue is necessary.
  3. Prefer Early Exit for Simplicity: Sometimes refactoring the loop can eliminate the need for break or continue.

Explore More at The Coding College

For more practical examples and tutorials on C++ loops, control statements, and other programming concepts, visit The Coding College.

What’s Next?

  • Learn about nested loops and their interaction with break and continue.
  • Explore exceptions as an alternative to exiting loops.
  • Dive deeper into C++ best practices for clean code.

Leave a Comment