27.10.2013 Aufrufe

F - Epson

F - Epson

F - Epson

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

GoSub...Return<br />

SPEL+ Sprachreferenz<br />

GoSub überträgt die Programmsteuerung an ein Unterprogramm. Sobald das Unterprogramm<br />

vollständig ist, kehrt die Programmsteuerung wieder zu der Zeile zurück, die auf den GoSub Befehl<br />

folgt, welcher das Unterprogramm initiiert hatte.<br />

Syntax<br />

GoSub {lineNum | label}<br />

{lineNum | label:}<br />

statements<br />

Return<br />

Parameter<br />

lineNum Dies ist die Zeilennummer, zu der die Programmausführung wechselt, wenn der<br />

GoSub Befehl ausgeführt wird. Gültige Zeilennummern liegen zwischen 0001<br />

und 32767. Jegliche gültige Zeilennummer ist zulässig.<br />

label Anstatt eine Zeilennummer zu nutzen kann der Anwender auch ein Label<br />

definieren (empfohlene Lösung). Wenn der Anwender ein Label definiert (an<br />

Stelle der Zeilennummer) wird die Programmausführung zu der Zeile wechseln,<br />

in der sich dieses Label befindet. Das Label kann bis zu 24 Zeichen lang sein.<br />

Das erste Zeichen muss jedoch ein Buchstabe sein (keine Zahl).<br />

Beschreibung<br />

Der GoSub Befehl bewirkt, dass die Programmsteuerung an eine durch den Anwender definierte<br />

Anweisungs-Zeilennummer oder zu einem gleichermaßen definierten Label verzweigt wird. Das<br />

Programm führt dann die Anweisung in dieser Zeile aus und fährt mit der Ausführung in den darauf<br />

folgenden Zeilennummern fort, bis es auf einen Return-Befehl trifft. Der Return-Befehl veranlasst die<br />

Programmsteuerung, zurück zu der Zeile zu wechseln, welche direkt auf diejenige folgt, die GoSub<br />

ursprünglich initiiert hatte. (D.h., der GoSub Befehl veranlasst die Ausführung eines Unterprogramms,<br />

wonach die Ausführung zu der Anweisung zurückkehr, die auf den GoSub Befehl folgt.) Stellen Sie<br />

sicher, dass jedes Unterprogramm mit Return beendet wird. Diese Vorgehensweise veranlasst die<br />

Programmausführung, zu der Zeile zurückzukehren, die auf den GoSub Befehl folgt.<br />

Potentielle Fehler<br />

Verzweigen zu einer nicht existierenden Anweisung<br />

Wenn der GoSub Befehl versucht, die Steuerung an eine nicht existente Zeilennummer oder Label zu<br />

verzweigen, wird Fehler Nr. 8 ausgegeben.<br />

Der Verschachtelungslevel für GoSub-Befehle ist zu tief<br />

GoSub Befehle dürfen bis zu 16 Level tief verschachtelt werden. Das bedeutet, dass ein weiterer<br />

GoSub Befehl von innerhalb eines Unterprogramms ausgeführt werden kann (usw.) – bis zu 16 Mal.<br />

Sobald jedoch 16 verschachtelte GoSub Befehle ausgeführt sind, wird der Versuch, einen 17. GoSub<br />

Befehl auszuführen, in der Ausgabe des Fehlers Nr. 7 resultieren.<br />

Return-Befehl ohne GoSub-Befehl gefunden<br />

Ein Return-Befehl wird verwendet, um aus einem Unterprogramm ins Ursprungsprogramm<br />

“zurückzukehren”, das den GoSub Befehl ausgegeben hat. Wenn ein Return-Befehl gefunden wird,<br />

ohne dass dem ein GoSub Befehl voran gegangen ist, wird Fehler Nr. 3 ausgegeben. Ein<br />

alleinstehender Return-Befehl ist bedeutungslos, da das System nicht weiß, wohin es zurückkehren<br />

soll.<br />

Verwandte Befehle<br />

GoTo, OnErr, Return<br />

SPEL+ Language Reference Rev 3.5 193<br />

S

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!