Wednesday, March 24, 2010

gdb常用指令

給未來的裕翔

比別人起步晚的話

就麻煩努力的比別人甘願點^^

以下是從某個IT blog貼過來的gdb常用指令

原來的部落格每個指令後面都有解釋

不過我想用自己的話重新敘述

所以就先用vim拿掉解說部份了

關於解釋我先寫我用過的, 逐步累積中^^

break NUM 對某行設斷點, 縮寫是b
b path/file:line 這樣可對還未讀進來的檔案設定中斷點
backtrace 可加數字列出目前所在到前幾個function, 縮寫是bt
clear 清除所在位置的breakpoint
continue 從某個中斷點繼續run, 縮寫是c
display EXPR
file FILE
help NAME 查詢, 光打help會出現一堆類別, help 類別就可以再細部去看
info breakpoints 查看breakpoint的資訊, 縮寫是info b
info files
info func
info local 看所在function裡面所有local變數值
info prog
info var

info threads 列出目前執行序的資訊
kill 終止目前的process, 通常就是結束debug啦
list 列出以當前位置為中心的數行程式碼
make
next 執行下一步, 遇到function也不跳進去, 縮寫是n
print 加變數名稱可以看值

breakpoint 設斷點, 目前只用過對行和對function名稱
cd
commands

continue 從斷點繼續執行

condition
gdb的condition breakpoint
delete 加breakpoint的流水號來清除它, clear是接行號
display
down
frame
info
jump
pwd
pype
quit 從gdb離開
reverse-search
run 執行, 沒設斷點的話一步到底
search
set variable
signal
step 執行下一步, 遇到function會跳進去
undisplay
until 在for的位置輸入才有效? 離開for或while loop
up 接數字n, 表示往上走n個副程式
watch
whatis 查變數的型別
where 查詢從main到目前所在位置所經過的每個檔案
set args 接執行程式所需要的參數
Enter 重複最後一個指令

No comments:

Post a Comment