3.一、可視化程序行爲數組
3.二、準備簡單的可預測的示例數據結構
[factorial.c]()多線程
3.三、使調試器與程序一塊兒運行函數
gcc -g -o factorial factorial.c
gdb factorial
,而後輸入run 命令行參數
,本例是run 1
run -1
時報內存錯誤3.四、學習在程序崩潰時執行棧跟蹤工具
gdb的棧跟蹤命令是bt
,backtrace
,或where
。學習
up
或down
在棧中移動3.六、學習在程序中導航測試
命令ui
run
start
沒必要搜索包含main()函數的文件,直到main()的第一行 pause
continue
3種不一樣的步進模式google
step
進入函數調用的函數體 next
finish
3.七、學習檢查數據:變量和表達式操作系統
print n
3.八、一個簡單示例的調試會話
gdb factorial
start 13
next
next
print n
step
break 8
一點輸出
4.一、C/C++中的內存管理--功能強大但很危險
常見的內存訪問bug
4.二、有效的內存調試器
delete[]
4.三、示例1:檢測內存訪問錯誤
gcc -g main1.c
valgrind --tool=memcheck --leak-check=yes ./a.out
4.四、示例2:對內存分配/釋放的不完整調用
4.五、結合使用內存調試器和源代碼測試器
--db-attach=yes
選項來鏈接源代碼調試器。--db-command=<command>
指定另外一個調試器。purify_stop_here()
函數。_Insure_trap_error()
函數。4.七、什麼時候使用內存調試器
4.八、約束
提供更多計算機資源
一點收穫
valrind
開始使用和實踐5.二、示例:分配數組
5.五、第3步:測量內存使用
5.5.2 在固定時間間隔中止程序
setenv
或export
5.5.8 使用內存剖析工具
AQtime
或Mpatrol
Massif
或Mpatrol
valgrind --tool=massif ./testmalloc n 100000 8
使用massif5.七、綜合練習--genindex示例
一點收穫
top
命令外,我知道的招就沒有了。