1. 程式人生 > >CodeBlocks除錯C&C++程式碼的方法

CodeBlocks除錯C&C++程式碼的方法

CodeBlocks除錯C&C++程式碼的方法

CodeBlocks 的好處很多,例如跨平臺,小巧。如果你厭倦了Visual studio 的龐大,Eclipes的啟動緩慢,那你不妨試試CB。好了閒話少說,下面進入正題。

CodeBlock 配置

安裝和初步配置

除錯配置

  1. 確保開啟-g 和 -Wall 選項,具體方法參考上方連結。
  2. 確保使用是Debug方式。
  3. 開啟編譯,除錯工具欄以及logs工具欄,如圖下圖。
    工具欄設定

  4. 開啟除錯時檢視各種資訊的視窗,如Watchs,Breakpoints。如下圖所示:
    除錯視窗設定

  5. 或者如下圖所示,使用除錯工具欄上的工具也可以開啟
    除錯視窗設定

6.將這些視窗都調出來後,可以調整它們的位置,方便除錯。最終結果如圖所示。
最終效果

GDB命令除錯過程

小技巧:如果想要檢視資料,可以再Watchs中輸入即可。例如想檢視陣列a中的值,輸入a即可。

  1. 假設程式已經編譯通過,無語法錯誤。接著開始編譯。
  2. 首先需要設定斷點,否則程式一執行就結束了,根本沒法除錯。設定斷點可以在對應的行上按F5或使用滑鼠單擊左側邊欄。
  3. 這裡以二分法查詢為例進行說明。
  1. 在二分查詢函式處設定斷點
    這裡寫圖片描述
  2. 按F8執行Debug,接著程式進入Dos,要求你輸入資料,輸入75。
    這裡寫圖片描述

  3. 然後就正式進入除錯階段了。將logs中的debugger切換出來,然後就可以在command視窗中輸入GDB命令了。例如s(tep),n(ext)。到此,就可以隨便用強大的GDB進行除錯了。只是這裡使用GDB沒有在Linux中那方便,每次都要用滑鼠 點選一下command輸入欄,太煩了!!!這裡只是體驗一下而已,還是在Linux中用著爽。
    這裡寫圖片描述

提示:該方法主要是使用除錯的高階功能,例如設定條件斷點,除錯時改變變數的值,檢視指標地址等,自定義性比較強。