Afficher la pile d'exécution

GrosTony Messages postés 14 Date d'inscription mercredi 4 juin 2003 Statut Membre Dernière intervention 25 août 2005 - 24 août 2005 à 12:11
GrosTony Messages postés 14 Date d'inscription mercredi 4 juin 2003 Statut Membre Dernière intervention 25 août 2005 - 25 août 2005 à 09:55
Salut,
Je voudrais savoir s'il était possible en C/C++, d'afficher la pile d'exécution, comme par exemple avec la commande where dans gdb après une seg fault (en rouge dans le quote) :


Starting program: temp
(gdb) run
Program received signal SIGSEGV, Segmentation fault.
func () at temp.c:4
4 tab[495949465] = 12;
(gdb) where
#0 func () at temp.c:4
#1 0x08048380 in main () at temp.c:10


Merci

3 réponses

GrosTony Messages postés 14 Date d'inscription mercredi 4 juin 2003 Statut Membre Dernière intervention 25 août 2005
24 août 2005 à 14:00
Pour préciser un peu, c'est lors d'une levée d'exception je voudrais afficher la trace d'exécution.
En java ça donnerait un truc de genre :
try
{
fonction();
}
catch(Exception exp)
{
exp.printStackTrace();
}
0
Arnaud16022 Messages postés 1329 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 16 juin 2010 2
25 août 2005 à 03:19
hum

pas vraiement moyen, en C.

t'as bien un try/exept, mais pour accéder a [ebp+4*ecx] t'as que l'asm dsl

_______________________


Omnia vincit labor improbus
0
GrosTony Messages postés 14 Date d'inscription mercredi 4 juin 2003 Statut Membre Dernière intervention 25 août 2005
25 août 2005 à 09:55
Ok, merci,
J'ai essayé de regarder à tout hazard le code de gdb mais c'est un peu trop compliqué pour moi :d.
0
Rejoignez-nous