修改環境變量(前提電腦中存在\(gdb.exe\))函數
若是電腦是32位就要把cpp改爲32位 E:>g++ -g three.cpp -o a -m32工具
調試的時候 gdb32 就行了spa
\(GDB\)概述
————命令行
GDB是GNU開源組織發佈的一個強大的UNIX下的程序調試工具。或許,各位比較喜歡那種圖形界面方式的,像VC、BCB等IDE的調試,但若是你是在UNIX平臺下作軟件,你會發現GDB這個調試工具備比VC、BCB的圖形化調試器更強大的功能。所謂「寸有所長,尺有所短」就是這個道理。調試
通常來講,GDB主要幫忙你完成下面四個方面的功能:code
一、啓動你的程序,能夠按照你的自定義的要求爲所欲爲的運行程序。 二、可以讓被調試的程序在你所指定的調置的斷點處停住。(斷點能夠是條件表達式) 三、當程序被停住時,能夠檢查此時你的程序中所發生的事。 四、動態的改變你程序的執行環境。
從上面看來,GDB和通常的調試工具沒有什麼兩樣,基本上也是完成這些功能,不過在細節上,你會發現GDB這個調試工具的強大,你們可能比較習慣了圖形化的調試工具,但有時候,命令行的調試工具卻有着圖形化工具所不能完成的功能。讓咱們一一看來three
在編譯時用 -g 選項打開調試選項.編譯
dir 查看文件目錄
cd 改變工做目錄
pwd 顯示當前工做目錄
Tbreak 設置臨時斷點。它的語法與break相同。區別在於用tbreak設置的斷點執行一次以後當即消失
awatch 設置讀寫監視點。當要監視的表達式被讀或寫時將應用程序掛起。它的語法與watch命令相同
rwatch 設置讀監視點,當監視表達式被讀時將程序掛起,等侍調試。此命令的語法與watch相同class
display:在應用程序每次中止運行時顯示錶達式的值。
info break:顯示當前斷點列表,包括每一個斷點到達的次數。
info files:顯示調試文件的信息。
info func:顯示全部的函數名。
info local:顯示當前函數的全部局部變量的信息。變量
info prog: 顯示調試程序的執行狀態。
print: 顯示錶達式的值。
delete命令: 刪除斷點。指定一個斷點號碼,則刪除指定斷點。
一個調試示例
——————
3.1 查看源文件 list 1,回車重複上一次指令
3.2設置調試斷點 break 16,在第16行設置斷點,info break查看斷點信息(亦可以使用縮寫i b )
3.3 調試 運行 輸入run 或者r
3.3 單步調試,step 或者 s進入函數內部
3.4查看變量 print b 或者 p b
3.5查看函數堆棧bt,退出函數finish
3.6 繼續運行直到下一個斷點或主函數結束continue或者c
3.7 退出調試 輸入q