Bedingungen


Jeder Befehl kann durch Anhängen einer if-Klausel als letzten Parameter bedingt gemacht werden. Ist die Bedingung falsch, wird der Befehl übersprungen.

Eine Bedingung besteht aus einem oder mehreren Vergleichen der Form <wert> <operator> <wert>. Der linke Wert ist üblicherweise eine Variablenreferenz (wird vor dem Vergleich aufgelöst), der rechte ein Literal.

Operatoren:

=   - gleich (Zeichenfolgenvergleich)
^   - ungleich (Zeichenfolge); != und <> sind Synonyme
>   - größer als (numerisch)
<   - kleiner als (numerisch)
>= - größer oder gleich (numerisch)
<= - kleiner oder gleich (numerisch)

Numerische Operatoren vergleichen die Werte als Zahlen gemäß der 0x-/Dezimalregel (ein Präfix 0x oder $ bedeutet hexadezimal, andernfalls dezimal). Mehrere Vergleiche können mit AND und OR verknüpft werden und werden von links nach rechts ausgewertet. Werte innerhalb einer if-Klausel dürfen keine Leerzeichen enthalten.

Standard-Syntax der if-Anweisung:

messagebox "Möchten Sie das Programm patchen?", 4, "Patch", retval
; Wenn "Ja" geklickt wird (retval = 6)
messagebox "Sie haben Ja gewählt", 16, "Ja", retval1, if retval = 6
; Wenn "Nein" geklickt wird (retval = 7)
messagebox "Sie haben Nein gewählt", 16, "Nein", retval2, if retval = 7

Vergleiche kombinieren:

; Nur fortfahren, wenn die Größe positiv und der Status "ok" ist
goto ready, if @_size > 0 AND @_state = ok
; Verzweigen, wenn der Code 1 oder 2 ist
goto retry, if @_code = 1 OR @_code = 2

 

Copyright © 2001 - 2026, DotFix Software