50 votes

Comment imprimer une chaîne dans gdb?

J'ai une variable

 char* x = "asd\nqwe\n ... "
 

et je veux l'imprimer avec des nouvelles lignes imprimées en tant que nouvelles lignes et non des barres obliques inverses n . C'est possible?

88voto

ezpz Points 5273

À partir du débogueur, vous pouvez exécuter des commandes. Il suffit d'appeler printf

 (gdb) call printf("%s", x)
asd
qwe
...
(gdb)
 

Mise à jour: Plutôt que d’appeler printf, pourquoi ne pas utiliser la commande printf gdb?

 (gdb) printf "%s", x
asd
qwe
...
(gdb)
 

23voto

netskink Points 81

Utilisez le spécificateur de chaîne:

 print /s x
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X