ça viens de quoi au juste ?
Stack overflow ??
Stack overflow ??
Stack overflow ?? c'est quoi ce message d'erreur un debordement de pile ?
ça viens de quoi au juste ?
ça viens de quoi au juste ?
Quand un programme est chargé en mémoire, un espace est réservé pour la pile, qui sert à stocker les données temporaires, comme par exemple l'adresse de retour des procédures et les variables transmises en paramètre. Si tu utilises trop de variables ou d'appels de procédure sans jamais "revenir" (pour une procédure récursive par exemple), tu risques le stack overflow ou dépassement de pile.
Dernière modification par djes le mer. 14/sept./2005 18:20, modifié 1 fois.
- Progi1984
- Messages : 2659
- Inscription : mar. 14/déc./2004 13:56
- Localisation : France > Rennes
- Contact :
A la place de ta pile, prends une batterie
OK: Je sors.......
OK: Je sors.......
Librairies & Applications : https://www.purebasic.fr/french/viewtop ... f=8&t=6220
Site Web : https://rootslabs.net
Site Web : https://rootslabs.net
arf ! le problem viens de purebasic !!
dans mon programme puregolo ,
lorsque tu sauvegarde le listing (au format txt)
et que avant tu profite du requester pour effacer un autre fichier
ben au prochain chargement de listing (format txt) puregolo
tu run pour execution ; et boom plantage avec redemarrage de la machine !!! "stack overflow !!"
alors que ne n'utilise pas de procedure recursive !
que si tu charge 20 fois puis execution un fichiers puregolo pas de plantage
si tu charge et tu run puis tu sauve , autant de fois que tu veux , pas de plantage !
c'est juste le fait de profiter du requester de sauvegarde , pour faire autre chose que sauvegarder , par exemple effacer un fichier , avant de sauvegarder celui en cours , qui doit chambouler la pile !
parcequ'apres ça plant a l'execution de mon application !
je sais pas si j'ai ete clair !
dans mon programme puregolo ,
lorsque tu sauvegarde le listing (au format txt)
et que avant tu profite du requester pour effacer un autre fichier
ben au prochain chargement de listing (format txt) puregolo
tu run pour execution ; et boom plantage avec redemarrage de la machine !!! "stack overflow !!"
alors que ne n'utilise pas de procedure recursive !
que si tu charge 20 fois puis execution un fichiers puregolo pas de plantage
si tu charge et tu run puis tu sauve , autant de fois que tu veux , pas de plantage !
c'est juste le fait de profiter du requester de sauvegarde , pour faire autre chose que sauvegarder , par exemple effacer un fichier , avant de sauvegarder celui en cours , qui doit chambouler la pile !
parcequ'apres ça plant a l'execution de mon application !
je sais pas si j'ai ete clair !
Si tu as été très clair : ton programme écrase une partie de la mémoire. Ca peut venir de toi (genre lecture/écriture de datas hors espace réservé, d'écriture dans un tableau hors indice, de lecture de fichiers dans un buffer trop petit, appel d'une fonction sans sa contrepartie, etc.), ou de purebasic qui ne restaure pas correctement la mémoire après appel d'une fonction.