我有一套结构,我想存储在一个匿名成员结构。每个小结构看起来像这样:如何在匿名成员中存储结构数组?
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