Yanıtlar:
Tür info variables
"Bütün küresel ve statik değişken isimleri" listesine.
Tip info locals
o fonksiyonun statik değişkenleri içeren liste "geçerli yığın çerçevesinin Yerel değişkenler" (adları ve değerleri), için.
Tip info args
(ve onların değerleri) "geçerli yığın çerçevesinin değişkenleri" listesine.
y
olarak yeniden adlandırılır y.1913
.
y
fonksiyonunda foo
ve başka y
in bar
. Bunları ayırt etmek için, ikisine farklı bir ad verilmelidir y
.
Arama işlevinin yerel değişkenlerini daha select-frame
önce kullanmak istediğinizdeinfo locals
Örneğin:
(gdb) bt
#0 0xfec3c0b5 in _lwp_kill () from /lib/libc.so.1
#1 0xfec36f39 in thr_kill () from /lib/libc.so.1
#2 0xfebe3603 in raise () from /lib/libc.so.1
#3 0xfebc2961 in abort () from /lib/libc.so.1
#4 0xfebc2bef in _assert_c99 () from /lib/libc.so.1
#5 0x08053260 in main (argc=1, argv=0x8047958) at ber.c:480
(gdb) info locals
No symbol table info available.
(gdb) select-frame 5
(gdb) info locals
i = 28
(gdb)
select-frame
kısaltması yapılabilir sel
. Alternatif olarak frame
/ f
çerçevesini de basan / kullanın )
Ayrıca, info locals
bulunduğunuz işlevin bağımsız değişkenlerini görüntülemediğinden,
(gdb) info args
Örneğin:
int main(int argc, char *argv[]) {
argc = 6*7; //Break here.
return 0;
}
argc
ve argv
tarafından gösterilmeyecek info locals
. İleti "Yerel ayar yok" olacaktır.
Referans: info locals komutu .
info variables
o derleme birimi içindeki statik değişkenler olması gerekir, değil mi?