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

C++ Discussion :

Debugger une pile dans code blocks


Sujet :

C++

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    F�vrier 2013
    Messages
    15
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : F�vrier 2013
    Messages : 15
    Par d�faut Debugger une pile dans code blocks
    Bonjour,

    J'ai tr�s certainement mal cherch� et je vous prie de m'excuser si ce post est un doublon. J'aimerais savoir s'il est possible de connaitre le contenu d'une pile lorsque l'on d�bug sur CODE BLOCKS.

    Lorsque je clique sur "watch <pile>" , j'obtiens de nombreux "+" � ouvrir mais � aucun moment je ne vois le contenu de ma pile...

    Merci d'avance.

  2. #2
    Expert �minent
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 644
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activit� : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 644
    Par d�faut
    Salut,

    Il faut faire attention aux termes que l'on utilise lorsqu'il s'agit de d�bugger une application.

    Ce que Code::Blocks te permet de faire, c'est de d�bugger la pile d'appels, autrement dit, de "remonter le temps" afin de savoir quelles fonctions ont �t� appel�es pour en arriver au point o tu en es.

    Chaque fonction utilise sans doute un certain nombre de param�tres (par exemple, le pointeur this pour les fonctions membres de classes/structures, qui est un pointeur sur l'objet utilis�) et / ou de variables pour pouvoir travailler.

    G�n�ralement, ce qui t'int�resse, ce sont les valeurs prises par ces variables (car un param�tre fourni � une fonction est automatiquement consid�r� comme �tant une variable connue par la fonction).

    Sous Code::Blocks, dans le menu Debug->Debugging Windows, tu peux d�cider de faire apparaitre deux fen�tres particuli�rement int�ressantes :
    • La pile d'appel (des diff�rentes fonctions qui ont �t� appel�es pour t'amener au point actuel) en s�lectionnant call stack
    • La liste des variables et arguments connus par la fonction dans laquelle tu te trouve en s�lectionnant watches
    La premi�re te permet de remonter dans les fonctions appel�es, la deuxi�me te permet de trouver la valeur de chaque argument et de chaque variable connue par la fonction au moment o� l'ex�cution est suspendue par un break point. Si une erreur survient � l'ex�cution, c'est deux possibilit�s devraient, avec un peu d'exp�rience, te permettre de trouver l'origine de l'erreur qui fait que ton application ne fait pas ce que tu attends d'elle
    A m�diter: La solution la plus simple est toujours la moins compliqu�e
    Ce qui se con�oit bien s'�nonce clairement, et les mots pour le dire vous viennent ais�ment. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 f�vrier 2014
    mon tout nouveau blog

  3. #3
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    L'expression "d�bugguer une pile" me fait penser que tu veux voir le contenu d'une variable sp�cifique, genre une std::stack<> ou ta propre classe de pile LIFO.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

Discussions similaires

  1. ins�rer une image dans un block
    Par faten7 dans le forum Tableaux - Graphiques - Images - Flottants
    R�ponses: 0
    Dernier message: 03/04/2008, 10h55
  2. copier les biblioth�ques de TC dans Code::blocks
    Par acacia dans le forum Autres �diteurs
    R�ponses: 2
    Dernier message: 30/01/2008, 17h42
  3. Installer KjAPI dans Code::Blocks [D�butant]
    Par Paulinho dans le forum API graphiques
    R�ponses: 1
    Dernier message: 08/06/2007, 09h26
  4. [blender] exporter dans code::block ou devcpp
    Par youp_db dans le forum D�veloppement 2D, 3D et Jeux
    R�ponses: 2
    Dernier message: 05/06/2007, 15h10
  5. Developper une GUI avec Code::Blocks
    Par sylv_1 dans le forum Code::Blocks
    R�ponses: 3
    Dernier message: 10/03/2007, 14h37

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