BASIC-Compiler

Variablen

Variablen dienen zur Speicherung von numerischen Werten oder von Zeichenketten (Strings). Jede Variable hat einen Namen und einen Datentyp. Der Variablenname ist frei wählbar. Er muss mit einem Buchstaben beginnen und kann, sofern er länger als ein Zeichen ist, ab der zweiten Stelle Buchstaben und Ziffern enthalten. Groß-/Kleinschreibung wird nicht unterschieden. Der Variablenname darf kein reserviertes Schlüsselwort sein.

Der Datentyp legt fest, was in der Variable gespeichert werden kann. String-Variablen sind auf 255 Zeichen begrenzt.

  1. Einfache Variablen und Felder
  2. Globale und lokale Variablen
  3. Variablen deklarieren
  4. Werte zuweisen und auslesen

1. Einfache Variablen und Felder

Es gibt einfache Variablen und Feldvariablen (kurz Felder). Felder bestehen aus mehreren Feldelementen. Der JKCEMU-BASIC-Compiler unterstützt Felder mit bis zu zwei Dimensionen, d.h., die Feldelemente können ein- oder zweidimensional angeordnet sein. Die Dimensionen bzw. die Indexe zum Zugriff auf ein Feldelement werden in runden Klammern hinter dem Variablennamen (in dem Fall auch Feldnamen genannt) geschrieben.

2. Globale und lokale Variablen

Variablen haben einen Gültigkeitsbereich, innerhalb dessen sie sichtbar und somit benutzbar sind. Der Gültigkeitsbereich und somit die Sichtbarkeit kann global oder lokal sein. Globale Variablen sind im gesamten BASIC-Programm sichtbar, lokale nur in der benutzerdefinierten Funktion oder Prozedur, in der sie mittels LOCAL deklariert wurden. Hat eine lokale Variable den gleichen Namen wie eine globale, dann verdeckt sie die globale, d.h., im Gültigkeitsbreich der lokalen Variable kann auf die gleichnamige globale nicht zugegriffen werden.

3. Variablen deklarieren

Variablen müssen deklariert werden, bevor sie benutzt werden können. Die Deklaration bedeutet, den Namen und den Typ der Variable festzulegen.

Der JKCEMU-BASIC-Compiler kennt zwei Arten von Variablendeklaration: die implizite und die explizite. Die implizite Variablendeklaration ist vom klassischen BASIC her bekannt und bedeutet, dass man eine Variable einfach verwendet. Wenn der Compiler (oder im klassischen BASIC auch Interpreter) auf eine Variable stößt, die er noch nicht kennt, legt er sie einfach an. Beim JKCEMU-BASIC-Compiler können nur einfache Integer- und String-Variablen implizit deklariert werden. Der Datentyp ergibt sich dabei aus dem Namen: Endet dieser auf ein $-Zeichen, ist es eine String-Variable, anderenfalls eine Integer-Variable.

Bei der expliziten Variablendeklaration werden die Variablen mit der DIM- oder LOACL-Anweisung bekannt gemacht. Long- und Decimal-Variablen sowie Felder müssen, Integer- und String-Variablen können explizit deklariert werden. Im Sinne eines "sauberen Programmierstils" und mit Blick auf andere moderne Programmiersprachen ist es empfehlenswert, alle, also auch Integer- und String-Variablen, explizit zu deklarieren.

4. Werte zuweisen und auslesen

Einfachen Variablen sowie den einzelnen Feldelementen von Feldvariablen kann beliebig oft ein Wert zugewiesen und auch wieder gelesen werden. Die Zuweisung ist mit dem Anweisungen LET, INPUT, LINE INPUT, PASSWORD INPUT und READ möglich. Zum Lesen des in einer Variable stehenden Wertes gibt man den Variablennamen innerhalb eines Ausdrucks an.