Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
66 KAPITEL 8. PROZEDUREN<br />
}<br />
links_um();<br />
links_um();<br />
8.4 Programme (mit Prozeduren)<br />
Wir mussen an dieser Stelle die De nition eines Hamsterprogramms aus Kapitel 7.3 erweitern.<br />
8.4.1 Syntax<br />
Die nun gultige Syntax fur ein Hamsterprogramm ist in Abbildung 8.4 dargestellt. In der Abbildung<br />
wird das Syntaxdiagramm " Programm\ aus Abbildung 7.5 erweitert.<br />
Programm (2)<br />
Definitionen (1)<br />
Mainfunktion<br />
Definitionen<br />
Mainfunktion<br />
Prozedurdefinition<br />
Definitionen<br />
void main ( ) Prozedurrumpf<br />
Abbildung 8.4: Syntaxdiagramm: Programm (2)<br />
An dieser Stelle kann nun auch die Bedeutung des main-Teils erlautert werden. Wie Sie sicher<br />
schon festgestellt haben, handelt es sich auch hierbei um eine Prozedur, die sogenannte main-<br />
Prozedur. Dies ist eine besondere Prozedur. Sie wird automatisch beim Aufruf des Programms<br />
durch das Laufzeitsystem aufgerufen und darf niemals explizit durch den Programmierer aufgerufen<br />
werden.<br />
Ein Hamsterprogramm besteht danach aus einer Menge von Prozedurde nitionen, Dabei mu<br />
eine Prozedur den Namen main tragen. Die Namen der Prozeduren mussen paarweise disjunkt<br />
sein. Es durfen innerhalb der Prozedurrumpfe nur Prozeduren aufgerufen werden, die auch deniert<br />
sind. Nicht aufgerufen werden darf jedoch die main-Prozedur. Der Ort einer Prozedurdenition<br />
ist nicht festgelegt. Es spielt keine Rolle, ob die Prozedur vor oder nach einem Aufruf<br />
der Prozedur innerhalb eines Prozedurrumpfes de niert wird. Prozedurde nitionen sind keine<br />
Anweisungen, d.h. es ist nicht erlaubt innerhalb einer Prozedurde nition eine weitere Prozedur<br />
zu de nieren, anders ausgedruckt: Prozedurde nitionen durfen nicht geschachtelt werden.