GDB教程(查看內存)

先看http://blog.csdn.net/liigo/article/details/582231

x/<n/f/u> <addr>

n、f、u是可選的參數,<addr>表示一個內存地址

1) n 是一個正整數,表示顯示內存的長度,也就是說從當前地址向後顯示幾個地址的內容

2) f 表示顯示的格式

3) u 表示將多少個字節作爲一個值取出來,如果不指定的話,GDB默認是4個bytes,如果不指定的話,默認是4個bytes。當我們指定了字節長度後,GDB會從指內存定的內存地址開始,讀寫指定字節,並把其當作一個值取出來。


參數 f 的可選值:

x 按十六進制格式顯示變量。
d 按十進制格式顯示變量。
u 按十六進制格式顯示無符號整型。
o 按八進制格式顯示變量。
t 按二進制格式顯示變量。
a 按十六進制格式顯示變量。
c 按字符格式顯示變量。

f 按浮點數格式顯示變量。


參數 u 可以用下面的字符來代替:

b 表示單字節

h 表示雙字節

w 表示四字 節

g 表示八字節


例如:

(gdb) p record
$10 = {12, 76, 48, 62, 94, 17, 32, 37, 52, 69}
(gdb) p &record
$11 = (int (*)[10]) 0x8049740
(gdb) x/4uw 0x8049740
0x8049740 <record>:    12    76    48    62
(gdb) x/6ow 0x8049740
0x8049740 <record>:    014    0114    060    076
0x8049750 <record+16>:    0136    021

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章