Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
64 KAPITEL 8. PROZEDUREN<br />
Syntaktisch nicht korrekt sind folgende Beispiele:<br />
void while() {<br />
vor();<br />
}<br />
2_vor()<br />
{<br />
vor();<br />
vor();<br />
}<br />
Im ersten Beispiel wird als Prozedurname das Schlusselwort while verwendet. Das zweite Beispiel<br />
enthalt sogar zwei Fehler. Zunachst fehlt das Schlusselwort void. Weiterhin ist 2 vor kein<br />
gultiger Bezeichner, weil Bezeichner nicht mit Zi ern beginnen durfen.<br />
Das folgende Beispiel ist zwar syntaktisch korrekt, aber nicht besonders gut lesbar, weil zum<br />
einen ein schlechter Bezeichner gewahlt wurde und zum anderen die Strukturierung zu wunschen<br />
ubrig la t:<br />
void zwei_vor<br />
()<br />
{ links_um();<br />
vor();nimm(); vor();<br />
gib(); vor();}<br />
8.3 Prozeduraufruf<br />
Durch eine Prozedurde nition wird ein neuer Befehl eingefuhrt. Ein Aufruf des neuen Befehls<br />
wird Prozeduraufruf genannt.<br />
8.3.1 Syntax<br />
Die Syntax eines Prozeduraufrufs ist in Abbildung 8.3 de niert.<br />
Ein Prozeduraufruf entspricht syntaktisch dem Aufruf eines der vier Grundbefehle. Er beginnt<br />
mit dem Prozedurnamen. Anschlie end folgen eine o nende und eine schlie ende runde Klammer<br />
und ein Semikolon.<br />
Ein Prozeduraufruf ist eine spezielle elementare Anweisung. Das Syntaxdiagramm aus Abbildung<br />
7.3 mu also erweitert werden. Abbildung 8.3 enthalt das neue Syntaxdiagramm fur elementare<br />
Anweisungen. Prozeduraufrufe durfen daher uberall dort in Hamster-Programmen auftreten,<br />
wo auch andere Anweisungen wie die vier Grundbefehle stehen durfen. Insbesondere konnen<br />
innerhalb von Prozedurrumpfen auch wieder (andere) Prozeduren aufgerufen werden. Achten<br />
Sie jedoch zunachst darauf, da innerhalb eines Rumpfes einer Prozedur nicht die Prozedur