|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : mai 2008 Messages : 4 ![]() |
Bonjour,
je travaille avec TP7 sous windows xp, j'ai un problème avec les listes chainées : la partie remplissage et affichage de ma liste marche bien, mais ensuite j'essaie d'inverser ma liste dans une autre liste, et là ça ne marche pas... lors de l'exécution du programme une erreur se produit à cette étape : erreur 203 : Heap overflow error (dépassement de tas) Je pense que c'est parce que mon code n'est pas bon bien sur, car a priori la manipulation souhaitée n'a rien d'extraordinaire). Quelqu'un pourrait-il corriger la partie où j'essaie d'inverser ma liste dans une deuxième liste ? Par avance merci, blm. Voici mon code complet : Code :
|
||
|
|
00
|
|
|
#2 |
![]() ![]() Inscription : avril 2002 Messages : 2 275 ![]() |
Attention avec tes variables début et début2. En général ces valeurs ne doivent plus changer une fois que ta liste est remplie de valeurs, car sinon tu perds justement le début.
Pour parcourir une liste chaînée, on utilise une variable temporaire plutôt que de modifier le début. De la même façon, il faut passer par des variables temporaires pour ajouter des cellules d'une nouvelle liste. Aussi, tu alloues début2, mais ça n'a pas d'intérêt puisque juste après, tu alloues une cellule temporaire avec la variable nouveau. Voila quelques pistes
__________________
M.Dlb - Modérateur z/OS - Rédacteur et Modérateur Pascal |
|
|
00
|
|
|
#3 | ||||||||
|
Membre Expert
![]() Inscription : septembre 2009 Messages : 980 ![]() |
pourquoi ne gère tu pas une Liste chainée double sens :
Code :
next = nil = c'est le dernier item parcourir dans le bon sens : Code :
Code :
Code :
tu peux aussi regarde ma vieille source dans ce Zip (l'unité ChainList.pas)
__________________
[ Sources et programmes de Dr.Who | FAQ Delphi | FAQ Pascal | Règlement | Contactez l'équipe ] Ma messagerie n'est pas la succursale du forum... merci! |
||||||||
|
|
10
|
Copyright © 2000-2013 - www.developpez.com