Dans mon programme, p_meta->padding
est un tableau char. Quand je l'imprime dans gdb, le résultat est:Quel est le format par défaut de la commande d'impression gdb
(gdb) p p_meta->padding
$18 = "\037\000\000\000\332\375\024e\203\000\000\000\am\333p", '\000' <repeats 215 times>
Il semble que utilisez le format octal. Mais je ne peux pas comprendre ce que \024e
ou \am\333p
signifient. Lorsque j'utilise un format explicite, je suis arrivé:
(gdb) p /o p_meta->padding
$19 = {037, 0, 0, 0, 0332, 0375, 024, 0145, 0203, 0, 0, 0, 07, 0155, 0333, 0160, 0 <repeats 216 times>}
(gdb) p /x p_meta->padding
$20 = {0x1f, 0x0, 0x0, 0x0, 0xda, 0xfd, 0x14, 0x65, 0x83, 0x0, 0x0, 0x0, 0x7, 0x6d, 0xdb, 0x70,
0x0 <repeats 216 times>}
La version de gdb est:
# gdb -v
GNU gdb (GDB) Fedora 7.12-24.fc25
Merci pour toute aide!
Par défaut, GDB imprime une valeur en fonction de son type de données. – Gaurav
Je suppose que le tableau contient une valeur garbage. – Gaurav
@GauravPathak Oui, le tableau est rempli par des caractères aléatoires. – wangt0907