Referenz - CPTR
Syntax: CPTR(Datentyp Ptr, 32bit_Ausdruck)
Kategorie: Datentypen
Typ: Funktion
CPTR verwandelt einen beliebigen 32bit-Ausdruck in einen
Pointer eines beliebigen Typs.
'Datentyp' ist ein beliebiger Datentyp, der jedoch ein Pointer sein muss. Erlaubt sind auch
ZSTRING- und
WSTRING-Pointer. '32bit_Ausdruck' ist entweder ein Pointer, eine
INTEGER- oder eine
UINTEGER-Variable. Der Rückgabewert ist ein Pointer auf eine Speicherstelle vom Typ 'Datentyp'.
Beispiel:
DIM i AS INTEGER
DIM ip AS INTEGER PTR, z AS ZSTRING PTR
i = &h0080
ip = @i
PRINT *CPTR(BYTE PTR, ip), *ip
i = 33
ip = @i
z = CPTR(ZSTRING PTR, ip)
PRINT i, *z
SLEEP
Ausgabe:
-128 128
33 !'!' ist ASCII-Char 33.
Hinweis:
- Momentan gibt der Compiler keinen Fehler aus, wenn als 'Datentyp Ptr' ein normaler Datentyp und kein Pointer angegeben wird. Dies kann zu Fehlern führen.
Unterschiede zu QB: neu in FreeBASIC
Unterschiede in den Dialektformen:
In der Dialektform
-lang qb steht CPTR nicht zur Verfügung und kann nur über __CPTR aufgerufen werden.
Siehe auch:
CAST
| Zusätzliche Informationen und Funktionen | ||||
|---|---|---|---|---|
|
||||




FreeBASIC-Nachrichten jetzt auch über Twitter erhalten. Follow us!

Versionen