跳到內容

Futurebasic/語言/參考/varptr

來自華夏公益教科書,自由的教學讀物
address& = VARPTR({var|FN userFunction})
address& = @var

VARPTR(var) 返回變數 var 的第一個位元組所在的記憶體地址。您可以將此值用作指向 var 的“指標”。如果 var 是區域性函式中的區域性變數,則 VARPTR(var) 返回的值在每次執行函式時可能不同,並且在函式退出後無效。語法 @var 只是 VARPTR(var) 的簡寫版本。

VARPTR(FN userFunction) 等同於 @FN userFunction 函式。

您不能將 VARPTR(var) 用於使用暫存器儲存的變數,因為此類變數沒有地址。請參見 DIM 語句和 REGISTER ON/OFF 語句,瞭解如何防止變數使用暫存器儲存。

由於“@”符號在 PRINTLPRINT 關鍵字後面出現時具有特殊含義,因此您不能將 @var 語法用作列印項列表中的第一個項。

PRINT @myVar#<spacer type="horizontal" size="15">'This does not work<br> ("@" is misinterpreted)
PRINT (@myVar#)<spacer type="horizontal" size="144">'This works.
PRINT VARPTR(myVar#)<spacer type="horizontal" size="108">'This works too.

@FN; REGISTER ON/OFF; PRINT; LPRINT; PEEK; POKE; BLOCKMOVE; DIM

華夏公益教科書