基本上所有的整合開發環境都提供了強大的和程式偵錯功能,在程式進行編譯,連接,運行時,會對程式中錯誤進行診斷。 程式的錯誤可以分為三類:語法錯誤、執行錯誤、邏輯錯誤。
1、語法錯誤:是指因為程式設計中輸入不符合語法規則而產生的。例如:表達式不完整、缺少必要的標點符號、關鍵字輸入錯誤、資料類型不符、循環語句或選擇語句的關鍵字不符等。通常,編譯器對程式進行編譯的過程中,會把偵測到的語法錯誤以提示的方式列舉出來,又稱為編譯錯誤。
語法錯誤的偵錯,則可以由整合開發環境提供的偵錯功能來實現,在程式進行編譯時,編譯器會對程式中的語法錯誤進行診斷。編譯診斷的語法錯誤分為3中:致命錯誤、錯誤、警告。
(1)致命錯誤:這個錯誤大多是編譯程式內部發生的錯誤,發生這類錯誤時,編譯被迫中止,只能重新啟動編譯程序,但是這類錯誤很少發生,為了安全,編譯前最好先儲存程式。
(2)錯誤:這個錯誤通常是在編譯時,語法不當所造成的。例如:括號不匹配,變數未聲明等。產生這類錯誤時,編譯程式會出現報錯提示,我們會根據提示對原始程式進行修改即可。這類錯誤是出現最多的。
(3)警告:是指被編譯程式懷疑有錯,但不確定,有時可強行通過。例如:沒有加void宣告的主函數沒有回傳值,double資料被轉換為float型別等。這些警告有些會導致錯誤,有些可以通過。
2、運行錯誤:指程式在運行過程中出現的錯誤。例如:除法運算時除數為0 、陣列下標越界、檔案打不開、磁碟空間不夠等。
3、邏輯錯誤:程式執行後,沒有得到設計者預期的結果。這就表示程式存在邏輯錯誤。這種錯誤在語法上是有效的,但是在邏輯上是錯誤的。
例如:使用了不正確的變量,指令的次序錯誤,循環的條件不正確,程式設計的演算法考慮不周全等。通常,邏輯錯誤也會附帶產生運作錯誤。
在一般情況下,編譯器在編譯程式時,不能偵測到程式中的邏輯錯誤,也不會產生邏輯錯誤的提示,因此邏輯錯誤比肩難排除,需要程式設計師仔細的分析程序,並藉助整合開發環境提供的偵錯工具,才能找到出錯的原因,並排除錯誤。
以上是程式設計中的錯誤歸納為哪三類的詳細內容。更多資訊請關注PHP中文網其他相關文章!