Witam. Mam pytanie odnośnie usuwania listy jednokierunkowej. Dlaczego podana funkcja usuwająca jest błędna ? Wyskakuje błąd i nie mam pojęcia dlaczego.
void historiaRozgrywek(historiaGry** pGlowa,char* napis)
{
if (*pGlowa == NULL)
{
*pGlowa = (historiaGry*)malloc(sizeof(historiaGry));
(*pGlowa)->ktoWygral = napis;
(*pGlowa)->nastepny = NULL;
}
else
{
historiaGry* kolejnyRekord = (historiaGry*)malloc(sizeof(historiaGry));
kolejnyRekord->ktoWygral = napis;
kolejnyRekord->nastepny = *pGlowa;
*pGlowa = kolejnyRekord;
}
}
void usunHistorieRozgrywek(historiaGry** pGlowa)
{
if (*pGlowa)
{
usunHistorieRozgrywek((*pGlowa)->nastepny);
free(*pGlowa);
*pGlowa = NULL;
}
}