Referenz - GOTO
Syntax: GOTO label
Typ: Anweisung
Kategorie: Programmablauf
GOTO springt zu einem beliebigen Label. Ein Label ist eine Zeichenfolge mit einem abschließenden Doppelpunkt. Die Zeichenfolge darf kein Befehl, Name einer SUB/FUNCTION oder einer bereits bestehenden Variable sein. In der Dialektform -lang qb und -lang deprecated darf als Label auch eine Zahl verwendet werden, der kein Doppelpunkt folgen muss.
Für den Namen von Labels gelten dieselben Regeln wie für die Namen von Variablen. Jedes Label darf nur einmal vergeben werden. Es ist ebenfalls unzulässig, denselben Namen innerhalb zweier Module doppelt zu verwenden. Eine GOTO-Anweisung bezieht sich immer auf ein Label innerhalb derselben SUB/FUNCTION desselben Moduls; es ist also nicht erlaubt, mit GOTO in eine Prozedur hinein- oder aus ihr herauszuspringen.
Beispiel:
#LANG "deprecated"
1 GOTO 4
2 PRINT "Tschüss!"
3 GOTO ende
4 PRINT "Willkommen!"
5 GOTO 2
ende:
END
Mit GOTO ist es sehr leicht, sogenannten Spaghetticode zu erzeugen, der sich nur noch schwer warten lässt. Daher sollte man in der Regel versuchen, den Befehl zu vermeiden. Ersatz dafür bieten Strukturen wie Schleifen, SUBs und FUNCTIONs.
Siehe auch:
GOSUB, DO ... LOOP, FOR ... NEXT, SUB, FUNCTION, EXIT, Prozeduren, Programmablauf
Zusätzliche Informationen und Funktionen | ||||
---|---|---|---|---|
|