Nächste Seite: Typisierte Konstanten Aufwärts: Charakteristik verschiedener Typen Vorherige Seite: SET-Typen

###
BPOINTER und BPTR

AmigaDOS verwendet neben normalen Zeigern sogenannte BCPL-Zeiger. Dies sind Zeiger, deren Wert 4 mal kleiner ist als die Adresse, auf die sie zeigen. erlaubt die Deklaration derartiger Zeiger. Dies geschieht. indem man einen Zeiger als `BPOINTER TO` ... deklariert.

Beispielsweise enthält das Modul `DosD` die Deklaration

> `FileHandlePtr = BPOINTER TO FileHandle;`

Variablen dieses Typs kann man wie normale Variablen verwenden, der Compiler erzeugt nötigenfalls automatisch die Multiplikation mit 4, um auf die Elemente des `FileHandles` zuzugreifen.

Wird eine Typenkonversion eines `BPOINTER`s nach `POINTER` oder umgekehrt durchgeführt, dann wird ebenfalls der Wert des Zeigers entsprechend konvertiert.

Soll eine Variable zu allen `BPOINTER`-Typen kompatibel sein, muss diese vom Typ `SYSTEM.BPTR` sein. Dieser hat für die `BPOINTER`-Typen die gleiche Funktion wie `ADDRESS` für die `POINTER`-Typen.