Zurück Weiter Kapitel

Vergleichsoperatoren

ARexx unterstützt drei Arten von Vergleichen:

Vergleiche ergeben stets einen booleschen Wert. Die Ziffern 0 und 1 dienen zur Darstellung der booleschen Werte "false" und "true" ("falsch" und "wahr"). Wenn ein boolescher Operand erwartet wird, führt die Verwendung eines anderen Wertes als 0 oder 1 zu einem Fehler. Als boolescher Wert wird auch jede Zahl akzeptiert, die 0 oder 1 äquivalent ist, z.B. 0.000 oder 0.1E1.

Mit Ausnahme der Operatoren für exakte Gleichheit (==) und exakte Ungleichheit (Tilde==) bestimmen alle Vergleichsoperatoren dynamisch, ob ein Zeichenfolgenvergleich oder ein numerischer Vergleich auszuführen ist. Ein numerischer Vergleich erfolgt, wenn beide Operanden gültige Zahlen sind. Andernfalls werden die Operanden als Zeichenfolgen verglichen.

Alle Vergleiche haben die Priorität 3. Tabelle 3-3 zeigt eine Liste der zulässigen Vergleichsoperatoren.

Tabelle 3-3. Vergleichsoperatoren

Operator

Operation

Modus

==

Exakte Gleichheit

Exakt

~==

Exakte Ungleichheit

Exakt

=

Gleichheit

Zeichenfolge/Numerisch

~=

Ungleichheit

Zeichenfolge/Numerisch

>

Größer als

Zeichenfolge/Numerisch

>=oder ~<

Größer als oder gleich

Zeichenfolge/Numerisch

<

Kleiner als

Zeichenfolge/Numerisch

<= oder ~>

Kleiner als oder gleich

Zeichenfolge/Numerisch

Logische (Boolesche) Operatoren

ARexx definiert die vier logischen Operationen NICHT, UND, ODER und Exklusiv-ODER. Alle diese Operationen benötigen boolesche Operanden und ergeben ein boolesches Resultat. Der Versuch, mit anderen als booleschen Operanden eine logische Operation auszuführen, führt zu einem Fehler. Tabelle 3-4 zeigt eine Liste der zulässigen logischen Operatoren.

Tabelle 3-4. Logische Operatoren

Operator

Priorität

Operation

~

8

Logisches NICHT (Umkehrung)

&

2

Logisches UND

|

1

Logisches ODER

^oder &&

1

Logisches Exklusiv-ODER

Sonderzeichen

Einige Interpunktionszeichen besitzen innerhalb von ARexx eine spezielle Bedeutung, wie Tabelle 3-5 veranschaulicht.

Tabelle 3-5. Sonderzeichen

Sonderzeichen

Definition

(:) Doppelpunkt

Ein Doppelpunkt, dem ein Symbol-Token (ein alphanumerisches Zeichen oder . ! ? $) vorangestellt ist, definiert eine Sprungmarke in einem Programm.

() Klammern

Klammern werden in Ausdrücken dazu verwendet, Operatoren und Operanden in Unterausdrücken zusammenzufassen und so die normalen Prioritätswerte der betreffenden Operatoren aufzuheben. Eine öffnende Klammer dient auch zur Kennzeichnung eines Funktionsaufrufs innerhalb eines Ausdrucks. Ein Symbol oder eine Zeichenfolge, worauf unmittelbar eine öffnende Klammer folgt, definiert einen Funktionsnamen. Innerhalb einer Anweisung muß die Anzahl öffnender und schließender Klammern jeweils gleich sein.

(;) Semikolon

Das Semikolon dient als Endezeichen einer Anweisung. Wenn Sie mehrere kurze Anweisungen haben, die in eine Zeile passen, werden diese durch Semikolons voneinander getrennt.

(,) Komma

Das Komma dient als Fortsetzungszeichen am Zeilenende für Anweisungen, die in mehrere Zeilen aufgeteilt wurden, und als Trennzeichen zwischen Argumentausdrücken innerhalb eines Funktionsaufrufs.

Hoch Zurück Weiter Kapitel