Pauses pendant un programme en C
Résolu
cucrapock
Messages postés
16
Date d'inscription
Statut
Membre
Dernière intervention
-
tchsimons Messages postés 191 Date d'inscription Statut Membre Dernière intervention -
tchsimons Messages postés 191 Date d'inscription Statut Membre Dernière intervention -
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
A voir également:
- Pauses pendant un programme en C
- Mettre en veille un programme - Guide
- Programme demarrage windows - Guide
- Forcer la fermeture d'un programme - Guide
- Cette action ne peut pas être réalisée car le fichier est ouvert dans un autre programme - Guide
- Message programmé iphone - Guide
2 réponses
Pour faire une pause (ie attendre que l'utilisateur presse une touche) il suffit d'utiliser l'instruction getchar() :
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 :
Dans gdb lance le programme en mettant derrière r les eventuels paramètres pris par ton code :
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 :
Bonne chance
#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
cucrapock
Messages postés
16
Date d'inscription
Statut
Membre
Dernière intervention
4
Merci beaucoup pour l'info :)