Нужно ли мне освобождать каждый отдельный элемент в структуре?

#c

#c

Вопрос:

Если у меня есть структура из целых чисел, должен ли я по отдельности освобождать все целые числа (они не являются указателями), или они будут освобождены, когда я вызову free() в структуре?

Ответ №1:

Нет, они будут освобождены, когда будет освобождена вся структура.

(Обратите внимание, что вам нужна только free структура, которая была выделена с помощью malloc / calloc / realloc , а не та, которая была выделена в стеке.)

Комментарии:

1. Я просто хотел бы добавить, что если вы его m / c / realloc, вы должны его освободить. Если нет, все должно быть хорошо.

Ответ №2:

malloc и free идут парами.
Если вы не выделяли для него память динамически, не освобождайте ее.