Puis-je utiliser gdb pour ignorer une ligne sans avoir à saisir des numéros de ligne?

Je sais que je peux utiliser le jump pour régler le compteur du programme sur une ligne spécifique et que je puisse sauter une ou plusieurs lignes (ou exécuter à nouveau certaines lignes). Puis-je facilement sauter la ligne suivante sans avoir à entrer de numéros de ligne?

Ce serait très pratique pour “commenter” quelque chose à l’exécution.

 jump +1 

saute à la ligne suivante, c’est-à-dire saute la ligne en cours. Vous pouvez également vouloir le combiner avec tbreak +1 pour définir un point d’arrêt temporaire sur la cible de saut.

Voir http://sourceware.org/gdb/current/onlinedocs/gdb/Specify-Location.html pour plus d’informations sur les façons d’exprimer les emplacements avec gdb.

Notez que sans un point d’arrêt, gdb est susceptible de continuer l’exécution normalement au lieu de sauter. Donc, si le saut ne semble pas fonctionner, assurez-vous de définir un point d’arrêt à la destination.

J’ai le suivant dans mon fichier de configuration .gdbinit :

 define skip tbreak +1 jump +1 end 

Donc, tapez simplement skip in gdb pour ignorer une ligne.

Ignorer les nombres de lignes lors de l’exécution:

 [Current Position -- in GDB] Line N .......... // Lines To Skip .......... .......... [Line To Execute - After Jumping] Line M 

Mettez un point d’arrêt sur la ligne M:

 gdb$b M 

Aller à la ligne M:

 gdb$jump M