Pauses pendant un programme en C
Résolu
cucrapock
Messages postés
16
Statut
Membre
-
tchsimons Messages postés 207 Statut Membre -
tchsimons Messages postés 207 Statut Membre -
Bonjour,
comment peut on faire pour marquer une pause dans un programme en langage C. J'ai essayé les printf et les scanf mais ils ont tendance à ne pas être pris en compte lorsqu'il se trouve, par exemple, juste avant une erreur de segmentation (que l'on cherche à repérer d'ailleurs...).
D'avance merci
comment peut on faire pour marquer une pause dans un programme en langage C. J'ai essayé les printf et les scanf mais ils ont tendance à ne pas être pris en compte lorsqu'il se trouve, par exemple, juste avant une erreur de segmentation (que l'on cherche à repérer d'ailleurs...).
D'avance merci
2 réponses
-
Pour faire une pause (ie attendre que l'utilisateur presse une touche) il suffit d'utiliser l'instruction getchar() :
#include <stdio.h> int main(){ printf("presse une touche !\n"); getchar(); printf("fin\n"); return 0; }
Pour repérer l'endroit et la cause d'une erreur de segmentation le mieux c'est d'utiliser un debugger. Compile les fichiers .c avec l'option -g (si tu utilises gcc), puis lance gdb :gcc -g -W -Wall plop.c -o plop.exe gdb plop.exe
Dans gdb lance le programme en mettant derrière r les eventuels paramètres pris par ton code :r param1 param2 ....
Inévitablement la seg fault va se déclencher. Il suffit d'afficher la pile d'appel pour savoir exactement où le programme à planté (et pourquoi), en tapant :bt
Bonne chance -
j'ai le meme probleme mais moi je voudrais qeu le boutton soi pris en compte que si l'utilisateur frappe sinon le programme continu normalement