Futurebasic/語言/參考/sizeof
外觀
dataSize = SIZEOF({var|typeName|ptrType^|hdlType^^})
此函式返回為特定變數 var 分配的記憶體位元組數,或者為特定指定型別的每個變數分配的位元組數。
如果指定 typeName,它應該是在你的程式中先前定義的型別名稱(在 BEGIN RECORD 語句或 #DEFINE 語句中),或者 FutureBasic 的內建型別名稱之一(例如 INT,LONG,RECT 等)。SIZEOF 返回該型別變數的大小。
如果指定 ptrType^,則 ptrType 應該是在先前宣告為指向其他型別的指標的型別名稱(在 #DEFINE 語句中)。在這種情況下,SIZEOF 返回 ptrType 指向的型別的大小。請注意,如果你省略了 "^" 符號,SIZEOF(ptrType) 只返回指標變數的大小(通常為 4)。
如果指定 hdlType^^,則 hdlType 應該是在先前宣告為指向其他型別的控制代碼的型別名稱(在 #DEFINE 語句中)。在這種情況下,SIZEOF 返回 hdlType 引用的型別的大小。請注意,如果你省略了 "^^" 符號,SIZEOF(hdlType) 只返回控制代碼變數的大小(通常為 4)。
SIZEOF(stringVar$) 返回為字串變數 stringVar$ 在記憶體中保留的位元組數。這與 LEN(stringVar$) 不同。
如果變數 handleVar 包含可重定位塊(可能是未知型別)的控制代碼,你可以使用工具箱函式 GETHANDLESIZE 來確定塊的大小。
TYPEOF; LEN; BEGIN RECORD; #DEFINE