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 語句,瞭解如何防止變數使用暫存器儲存。
由於“@”符號在 PRINT 或 LPRINT 關鍵字後面出現時具有特殊含義,因此您不能將 @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