我有一套結構,我想存儲在一個匿名成員結構。每個小結構看起來像這樣:如何在匿名成員中存儲結構數組?
static struct {
uint16_t buf[256];
} bufData[8];
我知道一個事實,它只會有8個元素。我想包括該其他結構內,因爲這樣的:
static struct {
int size;
// I am not sure how to proceed
//char * bufData;
//struct * bufData;
} Table[MAX_FILES];
的數據正在被輸入爲這樣:
for (int i = 0; i < 8; i++) {
loadData(i,bufData[i].buf);
printf("%s\n", bufData[i].buf); // This works
}
,我希望存儲該表的j
個元素,如Table [j] .bufData。目前我試過
memset(bufData, 0, sizeof(bufData));
Table[j].size = 256;
Table[j].bufData = &bufData;
然後解壓它,但它不起作用。
char * test = Table[j].bufData;
for (int i = 0; i < 8; i++) {
printf("%s\n", test[i].buf);
}
我想我已經可怕地弄亂了這一個,我需要一些幫助解開它!
'typedef'是你的朋友。 – 2012-02-27 09:53:10
decl如何?尋找bufData,它是一個全局變量?堆?疊加麼? – 2012-02-27 10:02:24
它是一個堆棧元素,對於每個Table [j]結構都是唯一的。 – Rio 2012-02-27 10:03:04