今天主要介紹下這個軟件的調(diào)試功能。
對于編程學習,可以說調(diào)試能力是最重要的技能,沒有之一!尤其是C/C++/Linux開發(fā),有相當部分時間都會花在調(diào)試上,對于這部分后續(xù)還會有更加系統(tǒng)的總結(jié)。所謂調(diào)試程序,就是控制編譯器一行一行地執(zhí)行代碼,過程中可以清楚看到每個變量值的變化情況、函數(shù)的調(diào)用過程等,進而發(fā)現(xiàn)程序中隱藏的錯誤或者低效的代碼。
首先先確認下你的Dev C++調(diào)試配置是否正常,有些很常見的問題提前確認下。
1.工具欄中,選擇編譯選項
2.開啟產(chǎn)生調(diào)試信息,這個不開會導(dǎo)致無法進入調(diào)試模式
3.error-begin No source file named xxx的錯誤解決有些同學可能調(diào)試的時候會遇到,如果沒有可以跳過,方法是依次添加下邊的配置
-g3-static-libstdc++ -static-libgcc -g3gcc.exe -D__DEBUG__g++.exe -D__DEBUG__
4.正式開始調(diào)試,以下邊的代碼為例子,有電腦的同學可以直接實踐下
1#include?<stdio.h>
2
3int?main()?{
4????int?n,?cnt?=?0;
5
6????scanf("%d",?&n);
7????for(int?j?=?0;?j?<?n;?j?++)?{
8????????cnt?=?cnt?+?1;
9????}
10????printf("%d",?cnt);
11
12????return?0;
13}
添加斷點,這是調(diào)試功能的核心,下邊是幾個步驟:
1.左鍵添加斷點,主要是在比較容易出錯,或者有懷疑點的位置
2.添加變量查看,可以實時看到代碼中變量的值,非常的直觀
3.點擊②后,會有③窗口,添加代碼中變量名即可
4.輸入回車后,在左側(cè)④調(diào)試窗口就會出現(xiàn)變量的實時值
點擊調(diào)試或者按F5啟動調(diào)試功能,會出現(xiàn)黑色的控制臺窗口
此時根據(jù)代碼,代碼會走到第六行scanf等待你的鍵盤輸入
這里我們輸入5回車
斷點行會變?yōu)樗{色,意味著此時代碼運行到第8行并停止
左側(cè)變量n由于執(zhí)存儲了鍵盤的輸入變?yōu)榱?,cnt由于還沒有執(zhí)行仍為0
點擊下一步,代碼會繼續(xù)執(zhí)行一行,根據(jù)邏輯會運行到for循環(huán)入口,cnt由于執(zhí)行了一次變?yōu)榱?,而n由于沒有操作所以還是5
另外幾個調(diào)試功能的作用(都可以動手實踐下):
-
- 下一步:控制編譯器向下執(zhí)行一行語句;單步進入:功能和“下一步”按鈕類似,不同之處在于,當程序中調(diào)用某個自定義的函數(shù)時,此按鈕可以進入到函數(shù)內(nèi)部,繼續(xù)調(diào)試函數(shù)內(nèi)部的代碼,而 “下一步” 按鈕不會;跳過:繼續(xù)執(zhí)行程序,遇到下一個斷點暫停執(zhí)行;停止執(zhí)行:停止調(diào)試程序。
當最后執(zhí)行完for循環(huán),printf函數(shù)會輸出結(jié)果5到控制臺,左側(cè)cnt值也增長到了5
這就是一次相對比較簡單的調(diào)試了,大家可以親自動手實踐下,可能會到各種奇怪的問題,都非常正常,開發(fā)本就是解決問題的一個過程,這個調(diào)試雖然簡單,但是基本的原理就是這樣了,對于很多項目中都可以用到。