我有一个关于使用 realloc 函数的小问题。假设我有:
typedef struct
{
char* location;
int temp;
int numberOfRec;
}TEMP;
然后我在 main 中声明一个指向这个结构的指针并分配内存:
int main()
{
TEMP* data = xCalloc (1, sizeof(TEMP)); //wrapper function
data->location = xCalloc (20, sizeof(char)); //wrapper function
}
现在,如果我在另一个函数中为 data->location 重新分配内存。我需要返回 TEMP* 数据的地址吗?
int main()
{
someFunction(data); // Use this function or...
//data = someFunction(data);
...
}
void someFunction(TEMP* data)
{
...
data->location = xRealloc (data->location, 10 * sizeof(char));
}