C函數庫中有一函數可計算「結構」中變數在記憶體中位置的偏移量,感覺還不錯用。
typedef struct _ABIT_MAP
{
UCHAR byType;
UCHAR byBitmapFlag;
UCHAR abyReserved[18];
DWORD dwFirstCluster;
ULONGLONG ullDataLength;
}ABIT_MAP, *PABIT_MAP;
假設如下結構要求dwFirstCluster的位置。
用offsetof(ABIT_MAP, dwFirstCluster)可得偏移量為20,在複雜的結構中甚為好用。
沒有留言:
張貼留言