了解錯誤:三種程式設計錯誤
更新:2007 年 11 月
在本課程中,您將學習在撰寫程式時,可能會發生的各種不同類型錯誤。
即使是最有經驗的程式設計人員也會犯錯,因此,知道如何偵錯應用程式,並找出錯誤是程式設計中重要的一環。但是在學習偵錯程序以前,了解您所需要尋找並修正的錯誤類型會很有幫助。
程式設計錯誤可分成三大類:「編譯錯誤」、「執行階段錯誤」和「邏輯錯誤」。偵錯這三大類錯誤的技巧會在下面三個課程中詳細討論。
編譯錯誤
編譯錯誤也稱為「編譯器錯誤」,這種錯誤會讓您的程式無法執行。按下 F5 執行程式時,Visual Basic 會將程式碼編譯成電腦能夠了解的二進位語言。如果 Visual Basic 編譯器遇到不了解的程式碼,就會發出編譯器錯誤。
大部分的編譯器錯誤都是因為您輸入程式碼時犯下錯誤而產生的。例如,可能是拼錯了關鍵字、遺漏了必要的標點符號,或是沒有先使用 If 陳述式就嘗試使用 End If 陳述式。
所幸,Visual Basic 的 [程式碼編輯器] 經過設計,可在您嘗試執行程式前就識別這些錯誤。您將在下一個課程:尋找並修正編譯器錯誤中,學習如何尋找並修正編譯錯誤。
執行階段錯誤
執行階段錯誤是指程式在執行時發生的錯誤。這些錯誤通常是程式在嘗試執行不可能完成的作業時發生。
其中一個例子是除數為零。假設您有下列陳述式:
Speed = Miles / Hours
如果變數 Hours 的值為 0,除法運算就會失敗並導致執行階段錯誤。您必須先執行程式,才能偵測到這種錯誤,但是如果 Hours 包含有效的值,則不會發生這種錯誤。
發生執行階段錯誤時,您可以使用 Visual Basic 中的偵錯工具來判斷發生原因。您將在課程:程式無法執行!尋找並排除執行階段錯誤 中,學習如何尋找並修正執行階段錯誤。
邏輯錯誤
邏輯錯誤是指讓您的程式無法達到預期效果的錯誤。雖然您的程式碼可能在毫無錯誤的情況下編譯並執行,但作業所產生的結果可能並不如您所預期。
例如,您可能有稱為 FirstName 的變數,最初設定成空白字串。後來在程式中,您可能會將 FirstName 跟另一個稱為 LastName 的變數串連在一起,以顯示全名。如果忘了為 FirstName 指定值,則只會顯示姓氏,而無法如您預期地顯示全名。
邏輯錯誤最難尋找和修正,但是 Visual Basic 也有偵錯工具,可讓這項工作更容易。您將在追蹤並修正邏輯錯誤:尋找邏輯錯誤中,學習如何尋找並修正邏輯錯誤。
後續步驟
在本課程中,您了解到程式設計錯誤共有三大類。在下一個課程中,您將學習偵錯編譯器錯誤。
下一個課程:尋找並修正編譯器錯誤