Не могу освободить память с функцией free - C (СИ)
Формулировка задачи:
int *get_vector(t_graph *begin, int **mat_adc, int n, int end)
{
int i;
int j;
int *v0;
int *vk;
int *vec_ptr;
v0 = (int*)malloc(sizeof(int) * n);
vk = (int*)malloc(sizeof(int) * n);
if (!vk || !v0)
{
ft_error("Malloc error!\n");
return (NULL);
}
for (i = 0; i < n; i++)
v0[i] = mat_adc[i][end];
v0[n] = 0;
do
{
for (i = 0; i < n; i++)
{
vk[i] = v0[i];
for (j = 0; j < n; j++)
vk[i] = ft_min(vk[i], mat_adc[i][j] + v0[j]);
}
vk[end] = 0;
vec_ptr = vk;
vk = v0;
v0 = vec_ptr;
}
while (veccmp(v0, vk, n));
printf("Show vec started\n");
show_vec(vk, n);
printf("Show vec finished\n");
free(vk);
printf("vk freed\n!");
return (v0);
}Решение задачи: «Не могу освободить память с функцией free»
textual
Листинг программы
v0[n] = 0;