? Débogage d'un programme signifie essentiellement trouver les erreurs et les corriger. Un "bug" est une petite erreur dans le code qui pourrait échapper préavis en raison de divers facteurs . Parce que les programmes informatiques sont devenus si complexes , même le plus petit insecte peut causer de gros problèmes sur la ligne. Débogage d'un programme en C consiste à utiliser un débogueur pour aider erreurs de capture . Toutefois, un débogueur n'est pas un remplacement pour un programmeur qui sait comment chercher et d'intercepter les erreurs . Vérification de la sortie
petits programmes , un programmeur peut probablement vérifier certaines sorties afin de déterminer si l'état du programme reste correct tout au long de l'exécution. Dans ce cas , l'insertion d' instructions d'impression dans un programme pour afficher les variables qui ne sont normalement pas visibles pour l'utilisateur ne peut garantir un programme fonctionne - ou jusqu'à quel point cela fonctionne avant de s'écraser :
int i = 0;
intj ;
j = someFunction ( i) //fait un peu de travail sur les i et retourne une valeur
printf ( "% d" , j) //j à imprimer assurer j est une valeur
C débogueurs
légitime Selon l'environnement de développement, un programmeur doit avoir le débogage des logiciels disponibles pour s'appliquer à n'importe quel code . Ces programmes " à pied à travers " un programme tel qu'il fonctionne , le suivi des variables et les conditions jusqu'à ce qu'une erreur se produit. Lorsque l'erreur se produit, le débogueur retourne des informations sur l'erreur . Aussi, de nombreux débogueurs permettent aux programmeurs d' «Étape par " code une ligne à la fois, de sorte que le programmeur peut examiner l'exécution du code. Pour les systèmes Linux , le projet débogueur GNU (gdb) possèdent cette fonctionnalité ( gnu.org /s /gdb) tandis que les programmeurs Windows peuvent utiliser le débogueur inclus dans Visual Studio ( Microsoft.com /express ) .
< Br > Photos débogueurs et points d'arrêt
logiciels de débogage
utilise la notion de « points d'arrêt » où un programmeur peut arrêter un programme à mi- exécution au cours de débogage pour déterminer l'état de code. Par exemple, si le code ci-dessous accidents à un moment donné , le programmeur pourrait ne pas savoir où ni quand l'erreur s'est produite
int i , j; .
I = getNumber ();
j = j + i;
j = modify (i, j);
Il aurait pu se produire dans la fonction getNumber , la fonction modify , ou quelque part plus tôt dans le programme principal . Un point d'arrêt peut définir un endroit où s'arrête code avant de l'erreur , de sorte que le programmeur peut évaluer les conditions avant que l'erreur se produit .
Parcourant le code
débogage complexes peuvent impliquer ligne allant en ligne via le code. Une fois que le programmeur identifie l'emplacement d' erreur possible , il peut exécuter la ligne de code de programme en ligne , le suivi de l'état du programme jusqu'à ce qu'une erreur se produit. Ceci permet au programmeur de repérer la position exacte du programme , et de revenir en arrière pour voir où les conditions d' origine de l'erreur . Dans cet exemple , AB
i = getNumber ();
j = j + i;
j = modify (i, j);
si l'erreur se produit à la fonction "Modifier" , puis le programmeur peut revenir en arrière , et elle va découvrir que " i " a reçu une mauvaise valeur de « getNumber " et donc corrompu " modifier ".
< br > Photos