[C] fermeture soudaine de la console

fermeture soudaine de la console [C] - C - Programmation

Marsh Posté le 22-10-2007 à 17:10:41    

Bonjour,  
J'ai developpé une application en C++ en mode console,
le problème est que mon application se ferme parfois brusquement (sans meme un message d'erreur windows) à des moments indeterminés (difficile d'établir une logique entre l'algorythme et le moment de fermeture), ce qui me laisse donc très peu de chance pour pouvoir la debugger.
J'ai observé l'utilisation de mémoire vive de mon programme durant son execution, et la memoire reste stable, il ne me semble donc pas y avoir de grosses fuites de mémoire.
Mes questions sont les suivantes :
- d'ou peut venir ce type d'erreur (accès memoire non autorisé...?)  
- connaitriez vous des moyens qui me permettrait de pister l'erreur ? (débugger, ...)
 
PS : Je développe sous Dev-Cpp.
 
Merci d'avance.
Vincent

Reply

Marsh Posté le 22-10-2007 à 17:10:41   

Reply

Marsh Posté le 22-10-2007 à 17:30:28    

Il faut suivre le programme pas à pas.
Pour cela, on peut utiliser le débogguer, ou bien écrire des traces dans un fichier.
 
Avec Dev-CPP, j'ai remarqué un comportement étrange parfois si les sources étaient compilés et linkés avec le compilateur C, mais aucun problème avec le compilateur C++ avec les mêmes programmes C. Cela se paramètre au niveau du projet avec un clic droit sur chaque fichier source.

Reply

Marsh Posté le 22-10-2007 à 17:47:58    

Sinon, avec MinGW, je te conseille fortement d'utiliser DrMinGW (fait partie des mingw-utils). C'est un petit programme qui va intercepter les erreurs (segv, floatting point) et te montrer où il a planté (un backtrace avec les sources si compilé avec les symboles de debug). Ce n'est pas parfait, mais dans mon cas 9 fois sur 10, ça me donne le bon endroit.

Reply

Marsh Posté le 22-10-2007 à 21:55:30    

vulkanosaure a écrit :

J'ai developpé une application en C++ en mode console,


Et bien sûr tu postes ça dans le forum C sans donner le moindre code... logique...

 


Message édité par Emmanuel Delahaye le 22-10-2007 à 21:56:47

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Marsh Posté le 24-10-2007 à 12:37:43    

Merci pour vos réponse. J'ai réussi à cibler mon erreur en faisant mon appli ecrire dans un fichier texte externe tout au long de l'appli (comme l'avait suggéré olivthill). J'ai donc pu remonter à la ligne fonction exacte qui provoquait la fermeture.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed