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