У меня есть небольшой вопрос об использовании функции realloc. Предполагая, что у меня есть:Использование realloc для сжатия строки внутри структуры
typedef struct
{
char* location;
int temp;
int numberOfRec;
}TEMP;
Тогда я объявить указатель на эту структуру в основном и выделить память:
int main()
{
TEMP* data = xCalloc (1, sizeof(TEMP)); //wrapper function
data->location = xCalloc (20, sizeof(char)); //wrapper function
}
Теперь, если я перераспределить память для data-> места в другой функции. Нужно ли мне возвращать адрес данных TEMP *?
int main()
{
someFunction(data); // Use this function or...
//data = someFunction(data);
...
}
void someFunction(TEMP* data)
{
...
data->location = xRealloc (data->location, 10 * sizeof(char));
}
Нет, вам не нужно возвращать адрес данных TEMP, когда вы передавали его по ссылке. – umang2203