(五)程序的調(diào)試
1.基本概念
程序調(diào)試活動(dòng)包括:根據(jù)錯(cuò)誤的跡象確定程序中錯(cuò)誤的確切性質(zhì)、原因和位置;對(duì)程序進(jìn)行修改,排除錯(cuò)誤。
1)基本步驟
錯(cuò)誤定位修改設(shè)計(jì)和代碼,以排除錯(cuò)誤進(jìn)行回溯測(cè)試,防止引進(jìn)新的錯(cuò)誤。
2)程序調(diào)試的原則
(1)確定錯(cuò)誤的性質(zhì)和位置
分析與錯(cuò)誤有關(guān)的信息
避開死胡同
調(diào)試工具只是一種輔助手段,只能幫助思考,不能代替思考
避免用試探法
(2)修改錯(cuò)誤的原則
在出現(xiàn)錯(cuò)誤的地方,有可能還有別的錯(cuò)誤,在修改時(shí),一定要觀察和檢查相關(guān)的代碼,以防止其他的錯(cuò)誤
一定要注意錯(cuò)誤代碼的修改,不要只注意表象,而要注意錯(cuò)誤的本身,把問題解決
注意在修正錯(cuò)誤時(shí),可能代入新的錯(cuò)誤,錯(cuò)誤修改后,一定要進(jìn)行回歸測(cè)試,避免新的錯(cuò)誤產(chǎn)生
修改錯(cuò)誤也是程序設(shè)計(jì)的一種形式
修改源代碼程序,不要改變目標(biāo)代碼
2.軟件調(diào)試方法
1)強(qiáng)行排錯(cuò)法
通過內(nèi)存全部打印來排錯(cuò)
在程序特定部位設(shè)置打印語(yǔ)句—即斷點(diǎn)法
自動(dòng)調(diào)試工具。
2)回溯法
適合小規(guī)模程序的排錯(cuò)。發(fā)現(xiàn)錯(cuò)誤,分析錯(cuò)誤表象,確定位置,再回溯到源程序代碼,找到錯(cuò)誤位置或確定錯(cuò)誤范圍。
3)原因排除法
原因排除法包括:演繹法、歸納法和二分法。
演繹法:是一種從一般原理或前提出法,經(jīng)過排除和精化的過程來推導(dǎo)出結(jié)論的思考方法。
歸納法:從一種特殊推斷出一般的系統(tǒng)化思考方法。其基本思想是從一些線索著手,通過分析尋找到潛在的原因,從而找出錯(cuò)誤。
二分法:如果已知每個(gè)變量在程序中若干個(gè)關(guān)鍵點(diǎn)的正確值,則可以使用定值語(yǔ)句在程序中的某點(diǎn)附近給這些變量賦值,然后運(yùn)行程序并檢查程序的輸出。
三、本章應(yīng)考點(diǎn)撥
本章在筆試中一般占8分左右,約3道選擇題,1道填空題,是公共基礎(chǔ)部分比較重要的一章。從出題的深度來看,本章主要考察對(duì)基本概念的識(shí)記,有少量對(duì)基本原理的理解,沒有實(shí)際運(yùn)用,因此考生在復(fù)習(xí)本章時(shí),重點(diǎn)應(yīng)放在基本概念的記憶和基本原理的理解上。