Supprimer un élément d'une liste triée
Bonjour,
Cela fait quelques jours que j'essaie de supprimer un élément d'une liste triée en le passant par paramètre, mais cela ne fonctionne pas (au lieu de ça, la liste entière est supprimée). Voici ce que j'ai fait :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| void annulerReservation(reservation*& listeReservation, reservationFichier uneReservation, livre *listeLivres, abonne *unAbonne, int & numeroAbonneAnnule, char isbnAnnule[20])
{
reservation* precedent = listeReservation;
livre * livreAnnule;
livreAnnule = chercherIsbn(listeLivres, isbnAnnule);
abonne * abonneAnnule;
abonneAnnule = chercherAbonne(unAbonne, numeroAbonneAnnule);
if(precedent == NULL && strcmp(livreAnnule -> isbn , isbnAnnule) == 0)
{
listeReservation = NULL;
delete precedent;
return;
}
while(precedent != NULL && precedent ->quiAReserve != abonneAnnule && precedent ->quelLivre != livreAnnule)
precedent = precedent->reservSuivAbonne;
if(precedent == NULL) return;
precedent = precedent->reservSuivAbonne;
delete precedent;
precedent = NULL;
} |
Merci d'avance