IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Autres éditeurs Discussion :

Comment debugger un programme en C ?


Sujet :

Autres éditeurs

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de condor_01
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    294
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 294
    Par défaut Comment debugger un programme en C ?
    Salut à tous,
    Je veux savoir Comment debugger un programme en C.
    Je travaille sous Ubuntu et je n'utilise aucun environnement de développement. Seulement un éditeur de texte et le compilateur gcc.
    Je ne sais pas où le programme plante
    J'ai l'erreur : Erreur de segmentation : (core dumped)
    Merci

  2. #2
    Membre éprouvé
    Avatar de granquet
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    1 201
    Détails du profil
    Informations personnelles :
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 201
    Par défaut
    tu peux utiliser gdb en ligne de commande
    ou son interface graphique, ddd.

    tu dois pour ça compiler ton programme avec l'option -g.

    note: ce n'est pas un probléme de C, la section approprié est Outils pour C

  3. #3
    Modérateur
    Avatar de ToTo13
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2006
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 793
    Par défaut
    Bonjour,

    si tu n'arrives pas à les installer, tu as la bonne vieille méthode de localisation en mettant des "printf" aux points clefs de ton soft. :s
    Consignes aux jeunes padawans : une image vaut 1000 mots !
    - Dans ton message respecter tu dois : les règles de rédaction et du forum, prévisualiser, relire et corriger TOUTES les FAUTES (frappes, sms, d'aurteaugrafe, mettre les ACCENTS et les BALISES) => ECRIRE clairement et en Français tu DOIS.
    - Le côté obscur je sens dans le MP => Tous tes MPs je détruirai et la réponse tu n'auras si en privé tu veux que je t'enseigne.(Lis donc ceci)
    - ton poste tu dois marquer quand la bonne réponse tu as obtenu.

  4. #4
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Par défaut
    Citation Envoyé par ToTo13 Voir le message
    Bonjour,

    si tu n'arrives pas à les installer, tu as la bonne vieille méthode de localisation en mettant des "printf" aux points clefs de ton soft. :s
    Je recommande plutôt l'utilisation de fprintf() sur le flux stderr qui a l'avantage sur stdout de ne pas utiliser de tampon.

    Thierry
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

  5. #5
    Membre expérimenté Avatar de Ksempac
    Inscrit en
    Février 2007
    Messages
    165
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 165
    Par défaut
    Citation Envoyé par Thierry Chappuis Voir le message
    Je recommande plutôt l'utilisation de fprintf() sur le flux stderr qui a l'avantage sur stdout de ne pas utiliser de tampon.

    Thierry
    Question : Un printf suivi d'un fflush(stdout) ne regle t il pas le probleme du tampon ?

  6. #6
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Par défaut
    Citation Envoyé par Ksempac Voir le message
    Question : Un printf suivi d'un fflush(stdout) ne regle t il pas le probleme du tampon ?
    Oui. Maintenant si le programme utilise fréquamment stdout pour afficher des invites, des messages, etc., l'avantage d'utiliser stderr pour les message d'erreur est qu'il est possible de redirigier spécifiquement ce flux vers un fichier (par exemple). On obtient ainsi un découplage entre les messages destinés à l'utilisateur (affichés via stdout) et les messages d'erreurs.

    L'usgae de printf() + fflush() ne me choque pas outre mesure. Pour afficher des messages d'erreurs ou des traces, je préfère stderr. C'est fait pour...

    Thierry
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

  7. #7
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Des astuces et autres idées sur comment debugger son programme, c'est tout en haut de ce même forum: http://www.developpez.net/forums/showthread.php?t=443
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

Discussions similaires

  1. Réponses: 8
    Dernier message: 26/04/2010, 15h55
  2. comment debugger le programme d'autrui ?
    Par fred0655 dans le forum Zend
    Réponses: 4
    Dernier message: 26/03/2008, 20h41
  3. [VB6] Comment Debugger une activeX ??
    Par Berns dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 19/05/2003, 17h34
  4. Réponses: 8
    Dernier message: 05/06/2002, 11h55
  5. Comment débuter en programmation ?
    Par Marc Lussac dans le forum Débuter
    Réponses: 0
    Dernier message: 08/04/2002, 11h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo