Tracer l'état des variables ? [debugage] - C++ - Programmation
Marsh Posté le 02-07-2002 à 16:14:33
si tu fais ça sous linux compile avec l'option -g et lance ton prog avec gdb (gdb nomDuProg). en cas de plantage il te sortira la fonctino en question. Après y a des option plus évoluées mais commence par là.
Avec Visual ça va peut être difficile si ton apli est en plein écran.
Marsh Posté le 02-07-2002 à 16:38:52
tout d'abord j'ai testé gdb MonProg, mais ensuite j'ai l'invite (gdb) et je sais pas trop quoi y faire.
J'ai compilé avec gcc ma_source -o monProg `allegro-config --libs` -g (lorsque je met le -g juste après le -o, j'ai pas mal d'erreurs de compilation..).
Par contre, sous linux j'ai finalement une erreur ds le shell quand le prog "quitte" : il s'agit de :
Shutting down allegro due to signal #8
Exception en point flottant
merci de m'aider (mais je pense qu'il s'agit plus d'un problème avec la lib graphique..)
Marsh Posté le 02-07-2002 à 16:43:00
sous gdb fait help
si non tu doit avoir run pour lancer l'exécution.
Marsh Posté le 02-07-2002 à 17:26:24
gdb c'est super je peux voir la ligne à laquelle le programme plante.
Apparemment, il s'agissait d'une bête division par zero. (qui apparaissait une fois toutes les 1000 frames)
merci bcp de m'avoir aidé letoII
Marsh Posté le 02-07-2002 à 21:34:00
ReplyMarsh Posté le 03-07-2002 à 14:49:38
ReplyMarsh Posté le 03-07-2002 à 18:29:25
c deja fait, mais mon projet est encore "queued" (il attend l'accord du master..)
Marsh Posté le 03-07-2002 à 20:05:13
Ca va faire bizarre à Matthew de vérifier ton jeu, vu qu'il est plutot proche graphiquement de Tpong
Marsh Posté le 02-07-2002 à 16:02:03
J'ai fait un jeu en C avec la librairie graphique allegro.
Mais parfois il quitte purement et simplement sans message d'erreur ni rien. De plus, ce "plantage" semble survenir plus ou moins aléatoirement, et vu que la source comporte dans les 1400lignes de codes, je n'arrive pas à trouver l'erreur.
Ce que je voudrais faire est tracer les variables pour connaitre leur état, mais je ne sais absolument pas comment faire. (j'ai visual c++, dev-cpp, et linux a ma disposition). Et est-il possible de savoir quel est l'endroit exacte où le programme quitte ? comment ?
si vous voulez voir la source : http://www.cppfrance.com/article.aspx?Val=841
merci
raph