Un4GivN a écrit a écrit :
euh... dsl tout le monde je crois que javais oublié de mettre :
if (debut!=NULL) { while(fin!=debut) { courant=fin->avant; fin->avant->suivant=NULL; fin->avant = NULL;
free(fin); fin=courant; } free(fin); }
|
du moment que tu fais un free sur fin, les valeurs que tu mets dans l'enregistrement n'ont pas grande importance. de plus, comme tu détruis toute ta chaîne, inutile de retirer le chaînage avant (enfin, je veux dire le champ suivant de ton élément d'avant ). le conseil de tonton mogi, ce matin :
if (debut!=NULL)
{
while(fin!=debut)
{
courant=fin->avant;
free(fin);
fin=courant;
}
free(fin);
}
ça, c'est du tout bon, tu peux y aller, l'erreur est ailleurs... par exemple, je ne vois pas l'initialisation de debut dans ton code (ni la déclaration, tiens, c'est une variable globale ? t'as bien dû l'initialiser qque part, hein ?) sinon, à part la petite taille de tes noms de fichiers, je vois pas d'erreurs ???
Mogi.