TP5 exo4: coding style cleanups
[Algorithmic_C.git] / TP5 / exo4 / liste_chainee.c
index 746241b4ff7a51ff9594e9f89bb29eaa0cee7a05..a8589397a6aba3bf8da83b37936aedb2918203b3 100644 (file)
@@ -12,7 +12,7 @@ typedef struct cellule {
        struct cellule *suivant;
 } Cellule, *Liste;
 
-Cellule *creer_maillon(element e, Cellule * suivant)
+Cellule *creer_maillon(element e, Cellule *suivant)
 {
        Cellule *pnouveau = malloc(sizeof(Cellule));
        pnouveau->valeur = e;
@@ -142,12 +142,12 @@ Liste supprimer_iter(element e, Liste L)
                        free(L);
                        pavant->suivant = NULL;
                        return pdebut;
-                       /* supprimer au début de la liste */
+               /* supprimer au début de la liste */
                } else if (L->valeur == e && pavant == NULL) {
                        Cellule *pcourant = L;
                        free(L);
                        return pcourant->suivant;
-                       /* supprimer au mileu de la liste */
+               /* supprimer au mileu de la liste */
                } else if (L->valeur == e) {
                        Cellule *pcourant = L;
                        free(L);
@@ -175,6 +175,15 @@ Liste inverser_rec(Liste L)
        /* ... */
 }
 
+void liberer_iter(Liste L)
+{
+       while (!L) {
+               Cellule *pcourant = L;
+               free(L);
+               L = pcourant->suivant;
+       }
+}
+
 void liberer_rec(Liste L)
 {
        if (!L) {
@@ -214,8 +223,10 @@ int main()
        L = supprimer_iter(2, L);
        visualiser_rec(L);
        visualiser_iter(L);
-       liberer_rec(L);
+       //liberer_rec(L);
+       liberer_iter(L);
        /* ... */
 }
 
 /****************************************************************************/
+/* vim:noet:ts=8:sw=8:textwidth=80 */