了解您的 Bug:三种编程错误

更新:2007 年 11 月

在本课中,您将了解编写程序时可能出现的各种类型的错误。

即使最资深的程序员也会犯错,因此,知道如何对应用程序进行调试并找出错误是编程的重要组成部分。但在学习有关调试过程的知识之前,了解需要找出并修复的 bug 类型是很有帮助的。

编程错误分为三类:编译错误、运行时错误和逻辑错误。以下三课将分别介绍每一类错误的调试技术。

编译错误

编译错误也称为“编译器错误”,是指妨碍程序运行的错误。当您按 F5 运行程序时,Visual Basic 将您的代码编译为计算机可以理解的二进制语言。Visual Basic 编译器遇到不理解的代码时,就会发出编译器错误。

大多数编译器错误的原因是您在键入代码时出错。例如,您可能拼错了某个关键字,丢掉了某些必需的标点,或使用了 End If 语句却没有使用 If 语句。

幸运的是,Visual Basic 代码编辑器已经设计成在您尝试运行程序之前标识这些错误。在下一课 查找和消除编译器错误 中,您将学习如何查找和修复编译错误。

运行时错误

运行时错误是指在程序运行时发生的错误。这些错误通常是在程序试图执行不可能执行的操作时发生。

例如,用零做除数。假定有以下语句:

Speed = Miles / Hours

如果变量 Hours 的值为 0,则除法运算失败并导致一个运行时错误。程序必须顺序运行才能检测出此错误,如果 Hours 包含一个有效值,则此错误根本不会发生。

发生运行时错误时,可以使用 Visual Basic 中的调试工具来确定出错原因。在 居然无效?查找并消除运行时错误 一课中,您将学习如何查找和修复运行时错误。

逻辑错误

逻辑错误是指妨碍程序执行您希望它执行的操作的错误。您的代码在编译和运行时可能都没有错误,但某个操作的结果却可能不是您期望的结果。

例如,您可能有一个名为 FirstName 的变量,该变量的最初设置是一个空字符串。您后来可能会在程序中将 FirstName 和另一个名为 LastName 的变量连接起来以显示全名。如果您忘记给 FirstName 赋值,那么系统只会显示姓氏,而不是您期望显示的全名。

逻辑错误是最难查找和修复的错误,不过 Visual Basic 提供了调试工具,可使这项工作也变得容易一些。在 嘿!不应那样做!找出逻辑错误 一课中,您将学习如何查找和修复逻辑错误。

后续步骤

在本课中,您学习了三类编程错误。在下一课中,您将学习如何调试编译器错误。

下一课:查找和消除编译器错误

请参见

任务

查找错误:Visual Basic 调试介绍

其他资源

什么地方出错了?通过调试查找并修复错误