Futurebasic/語言/參考/offsetof
外觀
(+) 外觀 (+) 標準 (+) 控制檯
byteOffset = OFFSETOF(fieldName IN {recordType|trueRecVar})
byteOffset = OFFSETOF(const [IN pseudoRecVar])
使用此函式查詢特定欄位在一個記錄中從何處開始。OFFSETOF 返回欄位的偏移量,以位元組為單位,該偏移量是在記錄開頭的位元組數。在第一個語法中,recordType 是在 BEGIN RECORD 語句中定義的“真記錄”型別的名稱;trueRecVar 是宣告為“真記錄”型別的變數;fieldName 是該“真記錄”型別中的欄位名稱。在第二個語法中,const 是一個符號整數常量,沒有前導下劃線字元。通常,這將是在 DIM RECORD...DIM END RECORD 塊中定義的常量。pseudoRecVar.recLen 是宣告為 DIM psuedoRecVar.recLen 的“偽記錄”變數。當您使用第二個語法時,OFFSETOF 只返回 const 的值。由於符號常量始終具有全域性範圍,因此不需要 IN pseudoRecVar 子句。傳遞給 fieldName 的值被編譯器視為常量。您不使用型別指示符字尾,例如 $,&,#, 等等。
SIZEOF; TYPEOF; BEGIN RECORD; DIM RECORD; 附錄 C:資料型別和資料表示