Download C/C++ Skriptum
Transcript
TU-Wien
Institut E114
Prof. DDr. F. Rattay
Kontrollstrukturen
Unter dem Begriff Kontrollstrukturen versteht man alle Arten von Anweisungen, die einen Einfluß auf
die Reihenfolge nehmen, in der ein Quellcode abgearbeitet wird. Hierzu gehören Schleifenstrukturen,
Verzweigungen und Bedingungsketten. Der Einflußbereich einer Kontrollstruktur ist in der Regel durch
den zur Anweisung gehörigen Block begrenzt. Vor den weiteren Ausführungen sollen deshalb noch
einmal kurz die beiden Begriffe "Anweisung" und "Block" ins Gedächtnis zurückgerufen werden. Ein
Ausdruck wie zum Beispiel;
n = n + 5
wird durch ein nachgestelltes Semikolon ; zu einer Anweisung (das Semikolon beendet die Anweisung):
n = n + 5;
Mehrere Anweisungen und/oder Vereinbarungen (Deklarationen, Definitionen) können durch geschweifte
Klammern zu einem Block zusammengefaßt werden.
Beispiel:
{
/* Anfang des Blocks
*/
int
n = 0;
/* 1. Vereinbarung
*/
int
m = 1;
/* 2. Vereinbarung
*/
n = n + 5;
/* 1. Anweisung
*/
m = m + 2;
/* 2. Anweisung
*/
/* Ende des Blocks
*/
}
Ein solcher Block ist syntaktisch äquivalent zu einer einzelnen Anweisung. Nach der rechten Klammer
steht kein Semikolon. In jedem Block können Variablen vereinbart werden.
"if"-Anweisung
Die if-Anweisung erzeugt eine Verzweigungsstruktur die durch einen Entscheidungsausdruck
eingeleitet wird. Es gilt die folgende Syntax:
if (Ausdruck)
{
// if-Zweig
}
Für den Fall, daß die Auswertung des Ausdrucks „0“ ergibt, wird der if-Zweig übersprungen und die
Programmausführung unmittelbar hinter diesem fortgesetzt. Möchte man einen Block erzeugen, der nur
(ausschließlich) im Fall einer negativen Auswertung des Ausdrucks abgearbeitet wird, so steht hierfür die
else- Anweisung zur verfügung.
„else“-Anweisung
Die else-Anweisung kann nach folgender Syntax an einen „if“-Block angehängt werden:
if (Ausdruck)
{
// if-Zweig
}
else
Die Programmiersprachen C und C++
Kontrollstrukturen
21