cs_Nuage
Messages postés6Date d'inscriptionjeudi 21 février 2002StatutMembreDernière intervention22 février 2002
-
21 févr. 2002 à 19:17
cs_Nuage
Messages postés6Date d'inscriptionjeudi 21 février 2002StatutMembreDernière intervention22 février 2002
-
22 févr. 2002 à 17:14
Voila, j'ai un grave problème avec le debug de Visual.
Je fait un bête code source, avec une fonction pour créer un élement d'une pile, et une fonction pour virer un élement de cette même pile. Rien de bien sorcier, quoi. Sauf que.
En lançant le programme tel quel, il s'execute sans problème, tout marche. Sauf que, à chaque free que je fait, j'ai droit à une belle fenetre windows me signal un "debug assertion failure blablabla". Le programme marche quand même, mais c'est stressant de devoir cliquer sur "Ignorer" toutes les 20 secondes... J'ai vérifié, le free est bien effectué quand même !! De plus, je me suis rendu compte que si je place le malloc créant l'élément, et le free le virant dans la même fonction, dans ce cas la je n'ai pas de message d'erreur...
Enfin, j'ai même essayé avec un niveau de debug de 0, et il fait exactement pareil.
Si quelqu'un pouvait m'aider... Je vais tuer Visual, moi, si ça continue !!
(je précise que ça ne vient pas de ma config, vu que j'ai eu le même problème sur trois ordis différent, chacun tournant sous un OS différent)
cs_Nuage
Messages postés6Date d'inscriptionjeudi 21 février 2002StatutMembreDernière intervention22 février 2002 21 févr. 2002 à 20:40
Ah si, c'est parfaitement alloué... Ce n'est pas une erreur de compilation ni même d'execution ! Le programme marche parfaitement...
Pour résumer rapidement ce que je fait:
- création d'un élément d'une pile dans lequel je place des information
- lecture des informations de l'element, et destruction de l'element
Tout marche bien, les informations sont bien récupérées, et détruites aprés le free... Toutefois, lors de l'execution, lorsque le programme en arrive à la ligne du free, il m'invente une erreur de debug. Je ne sais pas a quoi ça correspond, car si je fait le choix d'ignorer l'erreur (c'est une boite de dialogue windows avec les habituels boutons ignorer, reessayer, abandonner) le programme continue son execution tranquillement, sans aucun problème... C'est pour ça que je craque un peu: avoir une erreur quand on fait un truc faux, ok; mais quand le code est sans faute, c'est vexant...
cs_Kaid
Messages postés949Date d'inscriptionmardi 2 octobre 2001StatutMembreDernière intervention 8 juillet 20061 22 févr. 2002 à 08:22
Tu peux essayer un truc : tu compiles ton projet en Mode Release (ca doit être menu Build / Set Active Configuration) et tu l'exécutes.
Si Windows fait une erreur du style "Memory Access Violation" c'est que ton code à un problème.
cs_Nuage
Messages postés6Date d'inscriptionjeudi 21 février 2002StatutMembreDernière intervention22 février 2002 22 févr. 2002 à 15:05
Ok, bah j'ai essayé, et tout roule sans erreur aucune...
Donc ça me rassure, c'est bien Visual qui part en vrille. Arg. Dire qu'on est obligé de taffer avec ce compilateur pour de nombreuses années, encore...
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_Kaid
Messages postés949Date d'inscriptionmardi 2 octobre 2001StatutMembreDernière intervention 8 juillet 20061 22 févr. 2002 à 17:10
Tu passes en mode release quand le développement de ton programme est terminé. La taille de l'exécutable déminue puisqu'il n'y a plus les informations de debug dans l'EXE et on peux l'utiliser sur toutes les machines. En mode debug, l'EXE a besoin de DLL seulement installées quand VC++ est installé.