Ciao a tutti,
ho un problema a rimuovere elementi da un lista. Spero qualcuno possa chiarirmi le idee
Mi sono dichiarato la seguente struct:
codice:
struct pippo
{
int i;
struct pippo *next; // punta al prossimo elemento
};
typedef struct pippo Pippo;
Mi sono poi dichiarato il seguente array di 3 elementi che sono puntatori a struct tipo Pippo:
Ho una funzione che aggiunge correttamente (testata) elementi nella lista, per es. creo una lista di 3 elementi con root array[0].
E' corretta la seguente funzione per rimuovere il primo elemento della lista?
codice:
Pippo *eliminaPrimo (Pippo *elem) //elimina il primo elemento della lista???
{
Pippo *aux;
aux = elem;
elem = elem->next;
aux->next = NULL;
free (aux);
return elem;
}
Ringrazio anticipatamente