Originariamente inviato da Lasentinella
Stavo riguardando il metodo elimina che deallochi lo spazio occupato dalla lista...secondo voi libera lo spazio oppure cancella solo temp questo codice?

codice:
void elimina(lista *p_L){
     while(*p_L!=NULL){
            if(*p_L!=NULL){
               lista tmp = (lista)malloc(sizeof(struct nodo));
               tmp = *p_L;
               *p_L = (*p_L)->next;
               free(tmp);      
            }
     }
}
Perché, provando a stampare la lista dopo elimina(), non ottengo nessun elemento, ma non so se succede perché è stata disallocata oppure se è SOLO il risultato di *p_L = (*p_L)->next;

Grazie
Credo che sia giusto quello che tu abbia fatto