по какой-либо причине вызов моей функции «delAll» более одного раза приведет к неправильной ошибке от Valgrind. Я не понимаю, почему, если я называю эту функцию второй раз может вызвать программу снова войти в то время цикла, даже если это просто «delAll» узлаНедействительный бесплатный Valgrind
// р связанный список с вызовом
struct node{
char *str, int data, struct node *next;
}
// здесь функция У меня возникли проблемы с:
void delAll()
{
struct node *temp,*temp2;
temp=p;
while(temp!=NULL)
{
temp2=temp;
temp= temp->next;
free(temp2->str);
free(temp2);
}
}
бесплатно не устанавливает значение null; в дополнение к 'free (temp2)' вы хотите добавить 'temp2 = NULL'. –
o да, вы правы, спасибо! – user308553