(1)gdb的使用,別人的帖子寫的不錯,直接貼鏈結吧,有空了自己再重寫。
gdb常用命令
主要講了常用的gdb命令,對幾個易混和重要的自己記錄一下。
r : 執行程式,直到斷點
s與n的區別:s遇到函式會跳到函式中,繼續在函式中單步,而n則直接呼叫函式,把呼叫函式看成一步。
clear 的行號指示的斷點,delete 的是info breakpoints中的斷點統一編號
until直到迴圈體結束,finish直到函式結束。
字母l,列出10行源**
回車,重複上一次命令
p,列印,可跟表示式, 例如 print foo(123) ,以引數123呼叫函式foo
bt:backtrace(回溯的縮寫)
gdb堆疊跟蹤的方法
主要講了gdb中的堆疊幀是如何安排的,以及bt,frame,info locals命令的配合使用,在函式呼叫層次很多時,frame不得不用啊,寫得很實用。
linux下core檔案除錯方法
主要講了在linux下如何配置生成的core檔案,其次是如何呼叫core檔案。
(2)記憶體洩露除錯
裡面寫的記憶體洩露發生方式不錯:(1)常發性(2)偶發性(3)一次性(4)隱式
應用 valgrind 發現 linux 程式的記憶體問題
大致講了一下valgrind的工作原理和幾個簡單例子。
valgrind 使用簡單說明
基本的valgrind使用和簡單例子
valgrind常用引數:
預設使用memcheck工具
-log-file=將輸出的資訊寫入到filename.pid的檔案裡,pid是執行程式的進行id
-leak-check=no|summary|full 要求對leak給出詳細資訊? [summary]
-leak-resolution=low|med|high how much bt merging in leak check [low]
一些除錯工具的使用
最常用的除錯工具是gdb,在此就不多說了,家庭常備。下面主要介紹一些其他的工具,滿足一些特殊需要的。對於一些工具只是簡單介紹功能,如果感興趣或覺得有用可以查閱相關資料 ctags 作用 為程式中所有函式建立索引,就像書籍總的目錄一樣。在當前目錄建立tags,檔案中每行由函式名,宣告該函式的檔案和乙個...
opensuse的一些軟體使用
opensuese大部分軟體都是直接在 選單 計算機 安裝刪除軟體 裡就可以了,就可以安裝。1 goldendict詞典軟體和命令列詞典 使用官網搜尋,安裝後sudo zypper in espeak安裝espeak軟體後,可以發音。使用官網搜尋sdcv,選擇opensuse 12.1後點選顯示不穩...
gdb除錯的一些技巧
雖然list已經很方便了,但還是不盡人意.如果能夠在執行的同時顯示 就好了,答案是肯定的.使用如下命令啟動gdb gdb tui main或者在啟動gdb後,輸入命令focus或layout linux下,程式出現崩潰都會在可執行檔案的目錄生成core檔案,此時可以使用core檔案檢視崩潰時的呼叫堆...