如果我有两个结构:
typedef struct{
unsigned int time;
double rate;
}quote;
typedef struct{
unsigned int freeSlots;
unsigned int end;
unsigned int start;
unsigned int currSize;
unsigned int maxSize;
unsigned int startAt;
//unsigned int currIndex;
quote quoteBuffer[1];
}cbuf;
我想创建一个函数来修改 cbuf 中的 quoteBuffer 数组的大小,我该怎么做呢?我尝试了几种方法,但到目前为止都没有奏效。我不断返回相同的格式:
quote *newQuoteBuffer = malloc(sizeof(quote) * newSize);
如果我在某处已经有一个现有的 cbuf(例如,我们将其称为“a”,其中 a 是指向 cbuf 的指针):
a->quoteBuffer = newQuoteBuffer;
但显然这行不通。有什么提示吗?