Это плохая практика, когда я назначаю указатель с новым указателем без свободного? - PullRequest
0 голосов
/ 10 февраля 2019

Это плохая практика, когда я назначаю новый указатель указателю без освобождения?

char **arr = malloc(sizeof(*arr)*9);

...
...

arr[5] = strdup("sys");
arr[6] = strdup("var");
arr[7] = strdup("home");
arr[8] = NULL;

arr[5] = arr[6];
arr[6] = arr[7];
arr[7] = NULL;

1 Ответ

0 голосов
/ 10 февраля 2019

Да.Поскольку этот указатель, который вы переназначили (например, arr [5]), больше не доступен, его память не может быть освобождена, и это утечка памяти.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...