開發平台(Platform): (Ex: Win10, Linux, ...)
windows
編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
VS
問題(Question):
我寫的程式,要讀取另一個程式記憶體內的資料
那個資料是完整的struct結構,但是其內容非常大
而我只知道struct的大小,但整個結構不知道
但是我只要其中幾個數據
我自己建立一個struct去讀他
typedef struct _iteminfo
{
int index;
int type;
char* name;
.
.
.
int count;
.
.
_iteminfo* next;
}*ITEMINFO
中間的....有的資料但是我用不到,我要怎麼把中間的資料弄滿去完成這整個struct
還是只能弄個同樣大小的東西去塞他?
作者:
EdisonX (卡卡獸)
2016-11-26 02:41:00標準 C 有個好用的 macro , 叫 offsetof, 用這個可以重新抽出所有你要的成員。是我的話會用int convert( ITEMINFO * pInfo , mystruct * pMyInfo);裡面就用 offsetof 去做,這樣以後 ITEMINFO 加成員也不用改變上述的 "塞array" 的大小。