xcode內建gdb,有時程式崩潰需要用gdb除錯,下面是常用的gdb命令:
1.使用backtrace命令,簡寫bt,用來檢視當前程序的函式呼叫棧情況,以此回溯到我們自己所寫的方法,有時可以看到出錯在哪一行;(真懷戀在vs中的程式設計,找問題哪須這麼麻煩)。
2.使用list命令,簡寫l,回到棧列表,會將當前棧裡的程式**羅列出來,方便問題查詢;
3.使用break命令,簡寫b,設定斷點,格式:b filename:line 即在哪個檔案的哪一行設定斷點
如:b test.m:10
4.使用next命令,簡寫n,單步除錯
5.使用continue,簡寫c,跳出當前斷點繼續執行
6.使用回車鍵,將繼續按照上條指令執行
7.使用print,簡寫p,可列印表示式和變數的值,在print命令後追加/format可以格式化輸出。/format是乙個gdb的格式化字串,比較有用的格式化字元有 x:十進位制數; c:字元; a:位址
8.使用print-object,簡寫為po,用來輸出obj-c中的物件。它的工作原理是,向被呼叫的物件傳送名為debugdescription的訊息。它和常見的description訊息很像
9.使用x命令,格式:x/format address。其中address很簡單,它通常是指向一塊記憶體的表示式。但是format的語法就有點複雜了。它由三個部分組成:
第乙個是要顯示的塊的數量;第二個是顯示格式(如x代表16進製制,d代表十進位制,c代表字元);第三個是每個塊的大小。值得注意的是第三部分,即塊大小是用字元對應的。用b, h, w, g 分別表示1, 2, 4, 8 bytes。舉例來說,用十六進製制方式,列印從ptr開始的4個4-byte塊應該這樣寫:
(gdb) x/4xw ptr
10.使用set命令,設定變數的值,set x=0
11、info 命令,檢視記憶體位址所在資訊
12、show 命令:顯示gdb相關資訊。
常用gdb命令
常用的gdb命令 1 輸入help可以檢視命令的類別。而help 類別,可以詳細檢視某一類別下的命令。命令可以分為以下幾類 1 aliases 其他命令的別名。2 breakpoints 中斷程式的命令。3 data 檢視資料。4 files 指定並檢視檔案。5 internals 維護的命令。6 ...
GDB常用除錯命令
呼叫gdb編譯需要在cc後面加 g引數再加 o root redhat home gdb 除錯檔案 啟動gdb gdb l 字母l 從第一行開始列出原始碼 gdb break n 在第n行處設定斷點 gdb break func 在函式func 的入口處設定斷點 gdb info break 檢視斷...
gdb常用除錯命令
將.c檔案程式設計成包含標準除錯資訊的檔案 命令 gcc g c o 1 啟動gdb除錯程式 兩種方式 a gdb filename b 啟動gdb後,使用file filename 2 list l 檢視程式 方便設定斷點 3 break b 函式名 在某函式入口處新增斷點 4 break 行號 ...