Tome una matriz global como ejemplo para ilustrar cómo imprimir programáticamente todas las variables en gdb:
Escribir código de recorrido variable
Cree el archivo search.gdb y escriba lo siguiente:
define print_hash_table
set $cnt =1
set $use=2
while $cnt
set $hash_entry=(g_hash_entry_t *)(hash_table.table + 123 * $cnt)
if $hash_entry.valid == 0x1
p /x *$hash_entry
end
if $cnt < 1024
set $cnt = $cnt + 1
else
loop_break
end
end
end
Instrucciones
gdb process process.core
source search.gdb
print_hash_table