Syntax: SADD (Stringvariable)
Typ: Funktion
Kategorie: Pointer
SADD gibt einen Pointer auf eine String-Variable zurück. Es ist ein Alias zu STRPTR und verweist auf den Anfang des tatsächlichen String-Inhalts, während @ auf den Anfang der Datenstruktur zeigt. Im Artikel zum Datentyp STRING finden Sie nähere Informationen zur Handhabung des Speichers.
Beispiel:
DIM s AS STRING
PRINT SADD(s)
s = "hello"
PRINT SADD(s)
s = "abcdefg, 1234567, 54321"
PRINT SADD(s), @s
POKE UBYTE, SADD(s), 65
PRINT s
Ausgabebeispiel:
0
160527952
160527952 3215135288
Abcdefg, 1234567, 54321
Unterschiede zu QB:
- In FreeBASIC können auch die Adressen von STRINGs fester Länge ausgegeben werden.
- Da FreeBASIC ein 32bit-Compiler ist, wird eine 32bit-Adresse ausgeben; in QB wird hier ein 16bit-Offset ausgegeben, das Segment muss zusätzlich ermittelt werden.
Siehe auch:
STRING (Datentyp), @, STRPTR, PEEK, POKE, Grundlagen zu Pointern, Zusammenstellung von Pointer-Anweisungen