Sonntag, 24. November 2024
11.6 C
Berlin

C++ Schleifen-Steuerung mit break und continue

In Kap5-2 haben Sie die break-Anweisung schon kurz kennengelernt. Dieser Befehl darf in C++ nur innerhalb einer Schleife, in einem case-Zweig oder in einer switch-Anweisung eingefügt werden. break bewirkt das sofortige Verlassen der Schleife. Sind mehrere Schleifen ineinander verschachtelt, wird nur die Schleife abgebrochen, die gerade durchlaufen wird. Die anderen Schleifen bleiben davon unbeeinflusst. Ein Beispiel zeigt das folgende Programm-Fragment:

 

int main()

{

char eingabe;

...

//Endlos-Schleife

for (;;)

            {

            ...

            //Ein Auswahlmenü anzeigen

            cout << "Auswahl: ";

            //Auswahl entgegennehmen

            cin >> eingabe;

            if (eingabe == "E")   //falls Eingabe = E

            break                 //Schleife verlassen

            }

            ...

}

 

Das Beispiel zeigt wie nach einer (nicht dargestellten) Anzeige eines Menüs eine Auswahl entgegengenommen wird. Nach Eingabe des Buchstabens „E“ wird die Endlosschleife durch die break-Anweisung verlassen.

[sc name=“adsense_InText_ad“]

Die continue-Anweisung wird nur innerhalb einer for- und einer while-Schleife angewendet. Sie hat zur Folge dass die restlichen Anweisungen übersprungen die Schleife aber nicht verlassen wird.

Gibt die Auswertung einer Schleifenbedingung den Wert „true“ werden alle Anweisungen in der Schleife ausgeführt. Durch die break-Anweisung besteht die Möglichkeit, die Abarbeitung der Befehle an einem beliebigen Punkt zu unterbrechen. Alternativ kann die continue-Anweisung dazu verwendet werden, die verbleibenden Befehle zu übergehen, ohne gleich die Schleife abzubrechen. Trifft der Computer innerhalb einer Schleife auf „continue“, kehrt das Programm zum Schleifenanfang zurück. Dort wird nach der Prüfung der Schleifenbedingung der nächste Durchlauf gestartet. Das folgende Beispiel zeigt die Verwendung der continue-Anweisung:

int main()

{

...

for (monat index=0; index<12; index++)

            {

            ...

            if index==5)                          //falls index = 5

            continue                              //Rest der Schleife überspringen

            ...                                   //weitere Anweisungen wenn index ungleich 5

            }          

...

}

 

Praxistipp: Genau wie bei break, ist es auch bei der continue-Anweisung wenig sinnvoll, die Befehle als allein stehende Anweisungen zu verwenden, denn der Rest der Befehle käme nie zur Ausführung. In der Praxis bedeutet das, dass die beiden Anweisungen immer in Abhängigkeit von einer if-Abfrage verwendet werden müssen.

 

Bei Verwendung der break- und Continue-Anweisung ist die Position sehr wichtig. Diese muss immer nach einem Incrementer (Hochzähler) sein, um eine Endlosschleife zu vermeiden. Die Anweisungen müssen jedoch vor anderen Befehlen stehen, die Einfluss auf den weiteren Programmablauf haben.

 

Dieser Artikel ist Teil unseres kostenlosen Workshops “C++ Programmieren lernen” – Geeignet für Einsteiger und Fortgeschrittene. Machen auch Sie mit und lernen Sie in 50 Artikeln, wie Sie Programme selbst schreiben!

 

 

Artikelbild: Fotolia / bramgino

 

PC-Reparatur.Shop - Team
PC-Reparatur.Shop - Team
Wenn Sie Fragen oder Anregungen zu diesem Beitrag haben, wenden Sie sich bitte direkt über die E-Mail Adresse blog@pc-reparatur.shop an unser Team - Vielen Dank!
Bewertung des Artikels: 1 Stern2 Sterne3 Sterne4 Sterne5 Sterne

IN EIGENER SACHE

Ähnliche Artikel