Suite a la recrudescence de cas problematique, voici le fruit d'une petite reflexion. Si vous avez d'autre choses a ajouter
Tout d'abord pour debugger un programme, il faut avoir les idees clair deja quant au programme, c'est a dire :
- qu'est-ce qu'il fait
- comment il le fait
et pour aider a cela, rien de tel que du code clair :
- indentation (on decale le code de quelques espaces apres un if, etc.)
- commentaire (telle fonction fait ceci, telle variable contient le resultat, etc.)
- fractionnement des "fonctions" (faire des fonctions generique plutot que d'avoir une fonction de 150 lignes super chiant a debugger)
Ensuite, pour les erreurs de compilations,
- compiler avec le maximum de warnings (-Wall pour gcc). Et comprendre ces warnings : un bon programme ne doit avoir aucun warning : un warning est succeptible de causer une erreur.
- utiliser man (manuel en ligne pour voir la syntaxe des primitives des librairies) (rappel: 'man fprintf' sous linux/unix), ou l'aide en ligne si disponible.
- reflechir au sens des instructions : pourquoi on fait ceci, cela etc.
Enfin, quand vous ne voyez pas l'erreur (et c'est comprehensible), afin de simplifier la tache de ceux qui vont vous aider, il faut specifier au maximum les erreurs rencontrees, en donnant:
- le message d'erreur,
- l'environement utilise (win/linux, compilo, librairies...)
- la ligne du code ou se produit cette erreur
- le code des structures et autres definitions si besoin est (pour montrer les types des donnees utilisees)
Il n'est pas necessaire :
- de donner le code complet (sauf si demande expressement)
Remarque, lorsque du code est donne, il doit l'etre entre les balises [code ] et [/code ]
Partager