Δημοσιεύτηκε: 21 Ιούλ 2011, 11:28
από stamatiou
Ο κώδικας της συνάρτησης:
Κώδικας: Επιλογή όλων

void list_destroy( List *list )
{
if ( list->head == NULL )
return;

Node *dummy = NULL;
while ( list->head ) {
dummy = list->head->next;
free( list->head );
list->head = dummy;
}

return;
}

και από κάτω λες:
έγραψε:Η πρώτη παρατήρηση είναι πως στην list_print() την λίστα την περνάμε by value, ενώ στην list_destroy() την περνάμε by reference. Δεν χρειάζεται να περαστεί by reference στην list_destroy() (άλλωστε άμα δείτε στα προηγούμενα μέρη, by value την περνάμε στην list_destroy) απλά το έκανα έτσι τώρα για να γίνει εμφανής η διαφορά μεταξύ του συμβολισμού -> και της απλής τελείας, όταν περιγράφουμε τα πεδία μιας μεταβλητής που είναι τύπου struct.