GDB常用命令與Visual Studio對比
阿新 • • 發佈:2018-11-02
兩種偵錯程式的字檢查功能一覽表
命令名稱 | GDB | Visual Studio |
---|---|---|
執行程式 | runs [args] | F5:Start Debugging (開始除錯) |
啟動程式 | start [atgs] | F10:Step over (逐過程) |
暫停 | Ctrl+C | Ctrl-Alt+Break:Break All (全部中斷) |
繼續執行 | continue(cont, c) | F5:Continue (繼續) |
step over | next | F10:Step over (逐過程) |
step into | step | F11:Step into (逐語句) |
step out | finish | F11:Step into ; Shift+F11:Step out |
斷點 | break file:lineno | 右擊Breakpoint/Insert Breakpoint (斷點/插入斷點) |
跟蹤點 | watch file:lineno | 右擊Breakpoint/Insert Tracepoint (斷點/插入跟蹤點) |
觀察點 | watch expr | Debug/New Bkpt/New Dat Bkpt (除錯/新建斷點/新建資料斷點) |
棧跟蹤 | backtrace(bt), where | Call Stack (條用堆疊) |
輸出表達式 | print expr | Immediate Window (及時視窗) |
顯示錶達式 | display expr | Watch 監視視窗 |
設定環境 | set var var=expr | Variables 變數視窗 |
設定環境變數 | set env var[=val] | Properties/Debugging/Environment (屬性/除錯/環境) |
顯示機器程式碼 | disassemble | 右擊Go to Disassembly (轉到反彙編) |
在機器程式碼中執行step-over | nexti | F10:Step over |
在機器程式碼中執行step-into | stepi | F11:Step into |
其他常用除錯命令
命令名稱 | GDB | Visual Studio |
---|---|---|
命令名稱 | GDB | Visual Studio |
條件斷點 | conditon bnum | 右擊Breakpoint/Condition |
事件斷點 | handle, signal | Debug/Exceptions…(除錯\異常) |
異常斷點 | catch, throw | |
函式斷點 | break function | Debug/New Bkpt/Break at function |
臨時斷點 | tbreak | |
列出所有斷點 | info breakpoints | F9:Debug/Toggle Brkp,斷點視窗 |
將命令連線到斷點 | command bnum | 右擊Brkp/When hit(斷點/命中條件) |
輸出到命令列 | printf | 右擊Brkp/When hit(斷點/命中條件) |
查詢函式 | info function expr | Debug/New Brkp/Break at function |
呼叫函式 | call expr | |
修改函式返回值 | return expr | Immediate Window |
輸出型別 | whatis arg | 右擊Go to Declaration(轉到宣告) |
輸出型別描述 | ptype arg | 右擊Go to Definition(轉到定義) |
輸出記憶體內容 | x arg | |
選擇幀棧 | info fram, fram arg |