Освобождение памяти после "указателя на указатель" - C (СИ)
Формулировка задачи:
Подскажите пожалуйста, как корректно освободить память после вот такого выделения.
int i = 0, n =0;
const int size = 10;
int**mass = (int**)calloc(size, sizeof(int));
for (i=0; i<size; i++)
for (n=0; n<size; n++)
mass[i]=(int*)calloc (size, sizeof(int));
Упс, там лишний цикл for, случайно туда попал. Извиняюсь.
Решение задачи: «Освобождение памяти после "указателя на указатель"»
textual
Листинг программы
for (i=0; i<size; i++) free(mass[i]); free(mass);
Объяснение кода листинга программы
- Объявлен цикл for для перебора элементов массива
massот 0 доsize - Внутри цикла используется функция
freeдля освобождения памяти, выделенной под каждый элемент массиваmass - После завершения цикла, освобождается память под сам массив
mass