Syntax: CAST (Datentyp, Ausdruck)
Typ: Operator
Kategorie: Typumwandlung
CAST konvertiert einen Ausdruck in einen beliebigen anderen Typ. Er löst damit alle C###-Befehle (CINT, CDBL, ...) ab.
'Datentyp' ist ein beliebiger Datentyp, inklusive Pointern. Auch ZSTRING- und WSTRING-Pointer sind erlaubt. STRINGs, ZSTRINGs oder WSTRINGs als Datentyp führen jedoch zu ungültigen Ergebnissen.
'Ausdruck' ist ein beliebiger Ausdruck. Soll ein String in einen Zahlendatentyp umgewandelt werden, wird dazu eine passende Funktion aufgerufen, z. B. VALINT zur Umwandlung in ein INTEGER.
CAST kann mithilfe von OPERATOR für verschiedene Datentypen überladen werden.
Beispiel:
DIM i AS INTEGER, ip AS INTEGER PTR
DIM b AS BYTE, bp AS BYTE PTR
i = &h0080
b = CAST(BYTE, i)
ip = @i
bp = CAST(BYTE PTR, ip)
PRINT i, b
PRINT *ip, *bp
Ausgabe:
128 -128
128 -128
Unterschiede zu QB: neu in FreeBASIC
Siehe auch:
CPTR, CSIGN, CUNSG, Datentypen umwandeln