int size = 1024*1024;
char *result = (char*)calloc(1, size);
...
получение данных и запись в result
...
return(result);
[C] использование calloc внутри функции
Код:
освобождается ли память, зарезервированная под result после return?
после return ничего освободить не получится (в текущей ф-ции), освобождать надо тогда, когда она больше не понадобится.
Цитата: oxotnik333
после return ничего освободить не получится (в текущей ф-ции), освобождать надо тогда, когда она больше не понадобится.
Код:
char *http_result = HttpQuery("http://ya.ru");
...
использование http_result
...
free(http_result);
http_result = NULL;
...
использование http_result
...
free(http_result);
http_result = NULL;
я правильно понимаю, что, освобождение памяти таким образом освободит область памяти , выделенную под char *result внутри функции?
Цитата: himas
я правильно понимаю, что, освобождение памяти таким образом освободит область памяти , выделенную под char *result внутри функции?
Да. Правильно.