API Basic Literals de - LIHACHTETAN/ClassicUO-BadNewbie-BasicIDE GitHub Wiki

123 / 0x0EED / "text" / TRUE

ClassicUO • Basic

Ein Literal schreibt einen Wert direkt in den Code. Zahlen und zitierte Texte brauchen keine Deklaration. TRUE/FALSE sind vordefinierte logische Werte. Eine zitierte Zahl bleibt bis zur Konvertierung Text.

Genaue Syntax

123
-2147483648
0x0EED
0xFFFFFFFF
2.5
"text"
'text'
TRUE
FALSE

Parameter

  • integer / hexadecimal — Dezimaler Integer von -2147483648 bis 2147483647 oder 0x mit Hexziffern 0–9/A–F. Kleines x verwenden. Hexliterale repräsentieren 32 Bits: 0xFFFFFFFF ist Integer -1, keine positive 64-Bit-Zahl.
  • floating — Gleitkommazahl mit Ziffern vor und nach dem Punkt, etwa 2.5 oder -0.25. 0.5 statt .5 schreiben. Komma, Exponentenschreibweise 1e3 und Zahlensuffixe sind in dieser Grammatik nicht unterstützt.
  • text — Text zwischen passenden einfachen oder doppelten Anführungszeichen. Für ein enthaltenes Zitat die andere Form oder Chr(34)/Chr(39) verwenden. Rückstrich-Escapes und verdoppelte Anführungszeichen werden nicht interpretiert. Beispieltext auf einer physischen Zeile halten.
  • TRUE / FALSE — TRUE ist Integer 1, FALSE Integer 0. Diese Namen nicht neu deklarieren. Es sind Werte statt Aufrufe: TRUE, nicht TRUE().

Rückgabewert

Ganz-/Hexzahl ergibt Integer; eine Zahl mit Punkt ergibt Decimal, einen binären Gleitkommawert; zitierter Text ergibt String. TRUE/FALSE ergeben Integer 1/0. Eine Wertauswertung löst keine Spielaktion aus und deklariert keine Variable.

Verhalten

  • Das Zeichen in -5 ist eine unäre Operation. -2147483648 wird als kleinster Integer behandelt, ohne zuerst den positiven Betrag speichern zu müssen. Ganze Zahlen außerhalb des Bereichs scheitern; größere Näherungswerte benötigen passende Gleitkommazahlen.
  • Text behält Zeichen und Schreibweise. "350" ist nicht die Zahl 350, "false" nicht FALSE. # und ; sind innerhalb von Anführungszeichen Text, außerhalb Kommentare. Konvertierungen stehen unter AS und den Funktionskarten.
  • Die Engine erkennt das Token, liest Zahlen kulturunabhängig oder entfernt die äußeren Anführungszeichen. Die IDE-Sprache ändert den Dezimaltrenner im Quelltext nicht.
  • Serial, Grafiktyp und Koordinate können alle Zahlen sein. Das Literal bestimmt ihre Bedeutung nicht; entscheidend ist der Parametervertrag des API-Aufrufs.

Beispiele

1. Hextyp und Ganzzahlgrenze

# itemType=0x0EED ist 3821. lowest=-2147483648 entspricht dem vorzeichenbehafteten Bitmuster 0x80000000. Main liefert deshalb itemType=3821. Es findet keine Gegenstandssuche statt.
Option Explicit On
SUB Main()
    VAR itemType = 0x0EED
    VAR lowest = -2147483648
    IF lowest = 0x80000000 THEN
        RETURN itemType
    END IF
    RETURN 0
END SUB

Erläuterung der Parameter und Ausführung:

itemType=0x0EED ist 3821. lowest=-2147483648 entspricht dem vorzeichenbehafteten Bitmuster 0x80000000. Main liefert deshalb itemType=3821. Es findet keine Gegenstandssuche statt.

2. Beide Zitatarten

# owner="O'Brien" enthält ein Apostroph. instruction steht in einfachen Anführungszeichen und enthält doppelte. owner, " | " und instruction ergeben O'Brien | say "go", ohne Rückstrich-Escapes im Skript.
Option Explicit On
SUB Main()
    VAR owner = "O'Brien"
    VAR instruction = 'say "go"'
    RETURN owner + " | " + instruction
END SUB

Erläuterung der Parameter und Ausführung:

owner="O'Brien" enthält ein Apostroph. instruction steht in einfachen Anführungszeichen und enthält doppelte. owner, " | " und instruction ergeben O'Brien | say "go", ohne Rückstrich-Escapes im Skript.

3. Logische Werte als Zahlen

# enabled=TRUE speichert 1, stopped=FALSE speichert 0. Die Rechnung ergibt 1*10+0=10. Main liefert ein Zahlenergebnis, nicht das kanonische TRUE.
Option Explicit On
SUB Main()
    VAR enabled = TRUE
    VAR stopped = FALSE
    RETURN enabled * 10 + stopped
END SUB

Erläuterung der Parameter und Ausführung:

enabled=TRUE speichert 1, stopped=FALSE speichert 0. Die Rechnung ergibt 1*10+0=10. Main liefert ein Zahlenergebnis, nicht das kanonische TRUE.


en · ru · uk · fr · de · it · es · zh-tw · ja · ko

Basic