c語言入門篇:程序調試方法

所謂程序調試是指對程序的查錯和排錯。編程


 

調試程序通常應通過如下幾個步驟:函數

1、先進行人工檢查,即靜態檢查。工具

在寫好一個程序之後,不要匆匆忙忙上機,而應對程序進行人工檢查。這一步十分重要,它能發現程序設計人員因爲疏忽而形成的學習

多數錯誤。這一步每每容易被人忽視,總但願把一切都推給計算機去作,但這樣會多佔用機器時間,做爲一個程序人員應當養成嚴謹的做風,每一步都要嚴格把關,不把問題留給後面的工序。spa

爲了更有效地進行人工檢查,所編的程序應力求作到如下幾點:debug

①應當採用結構化程序方法編程,以增長可讀性;設計

②儘量多加註釋,以幫助理解每段程序的做用;調試

③在編寫複雜的程序時不要將所有語句都寫在main函數中,而要多利用函數,用一個函數來實現一個單獨的功能。各函數之間除用視頻

參數傳遞數據外,儘可能少出現耦合關係,這樣便於分別檢查和處理。blog

2、在人工檢查無誤後,再上機調試。

經過上機發現錯誤稱爲動態檢查。在編譯時會給出語法錯誤的信息,調試時能夠根據提示信息具體找出程序中出錯之處並改正。應

當注意的是有時提示出錯的地方並非真正出錯的位置,若是在提示出錯的行找不到錯誤的話應當到上一行再找。

有時提示出錯的類型並不是絕對準確,因爲出錯的狀況繁多且各類錯誤互有關聯,所以要善於分析,找出真正的錯誤,而不要只從字面意義上找出錯信息,鑽牛角尖。

若是系統提示的出錯信息不少,應當從上到下逐一改正。有時顯示出一大片出錯信息每每令人感到問題嚴重,無從下手。其實可能

只有一二個錯誤。例如,對使用的變量未定義,編譯時就會對全部含該變量的語句發出出錯信息。這時只要加上一個變量定義,就全部錯誤都消除了。

3、在改正語法錯誤(包括「錯誤(error)」和「警告(warning)」)後,程序通過鏈接(link)就獲得可執行的目標程序。

4、運行結果不對,大多屬於邏輯錯誤。對這類錯誤每每須要仔細檢查和分析才能發現。能夠採用如下辦法:

若是實在找不到錯誤,能夠採用「分段檢查」的方法。在程序不一樣的位置設幾個printf函數語句,輸出有關變量的值,逐段往下檢查。

直到找到在某一段中數據不對爲止。這時就已經把錯誤侷限在這一段中了。不斷減少「查錯區」,就能發現錯誤所在。

也能夠用「條件編譯」命令進行程序調試(在程序調試階段,若干printf函數語句就要進行編譯並執行。當調試完畢,這些語句不用再編譯了,也再也不被執行了)。這種方法能夠沒必要一一去掉printf函數語句,以提升效率。

有的系統還提供debug(調試)工具,跟蹤程序並給出相應信息,使用更爲方便,請查閱有關手冊。

另外若是你想更好的提高你的編程能力,學好C語言C++編程!彎道超車,快人一步!筆者這裏或許能夠幫到你~

分享(源碼、項目實戰視頻、項目筆記,基礎入門教程)

歡迎轉行和學習編程的夥伴,利用更多的資料學習成長比本身琢磨更快哦!

編程學習:


 

編程學習:

相關文章
相關標籤/搜索