C语言程序常见错误与调试方法.

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C Programming
Hale Waihona Puke Baidu、语法错误
• 语法错误是指那些由于编程中输入不符合语法规 则产生的错误。 • 例如:表达式不完整、缺少必要的标点符号、关 键字输入错误、数据类型不匹配、循环语句或选 择语句的关键字不配对等。 • 通常,编译器对程序进行编译的过程中,会把检 测到的语法错误以提示的方式列举出来。
C Programming
(三)C语言程序调试方法 4、运行结果不对,大多属于逻辑错误。
• 这类错误往往需要仔细检查和分析才能发现。可 以采用以下办法: 1)将程序与流程图仔细对照,如果流程图是正确的, 程序写错了,是很容易发现的。例如,复合语句 忘记写花括弧,只要一对照流程图就能很快发现。
C Programming
C Programming
3、警告 • “警告”是指被编译程序怀疑有错,但不确定, 有时可强行编译通过。例如:主函数没有返回值 时没有加void声明、double型数据被转换为float 型数据等。 • 这些警告中,有些会导致错误,有些则可以编译 通过。
C Programming
(三)C语言程序调试方法
C Programming
(三)C语言程序调试方法 2、在人工检查无误后,再上机调试。即动态检查。
• 在编译时会给出语法错误的信息,调试时可以根 据提示信息具体找出程序中出错之处并改正。应 当注意的是有时提示出错的地方并不是真正出错 的位置,如果在提示出错的行找不到错误的话应 当到上一行再找。有时提示出错的类型并非绝对 准确,由于出错的情况繁多且各种错误互有关联, 因此要善于分析,找出真正的错误,而不要只从 字面意义上找出错信息,钻牛角尖。
C Programming
2、运行错误 • 运行错误是指程序在运行过程中出现错误。 • 例如:进行除法运算时除数为零、数组下标越界、 文件无法打开等。 • 这类错误只出现在运行过程中,在程序编译时一 般是无法发现的。
C Programming
3、逻辑错误 • 逻辑错误是指程序运行后,没有得到预期的结果。 这类错误从语法上来说是有效的,但是程序逻辑 上存在缺陷。
• 编译诊断的语法错误分为3类:致命错误、错误和 警告。
C Programming
1、致命错误 • “致命错误”大多数是编译程序内部发生错误。 • 发生这类错误时,编译被迫终止,只能重新启动 编译程序。幸运的是,这类错误很少发生,但是 为了安全,编译前最好先保存程序。
C Programming
2、错误 • “错误”通常是在编译时,语法不当所引起的, 例如括号不匹配、变量为声明等。 • 产生这类错误时,编译程序会出现报错提示,根 据提示对源程序进行修改即可。这类错误是出现 最频繁的。
C Programming
END
C Programming
(三)C语言程序调试方法 2)如果实在找不到错误,可以采用“分段检查”的 方法。逐段往下检查,直到找到在某一段中数据 不对为止。这时就已经把错误局限在这一段中了。 不断减小“查错区”,就能发现错误所在。 3)如果在程序中没有发现问题,就要检查流程图有 无错误,即算法有无问题。有则改正之,接着修 改程序。
C Programming
(三)C语言程序调试方法 • 为了更有效地进行人工检查,所编的程序应力求 做到以下几点: 1)应当采用结构化程序方法编程,以增加可读性; 2)尽可能多加注释,以帮助理解每段程序的作用; 3)在编写复杂的程序时不要将全部语句都写在 main函数中,而要多利用函数,用一个函数来实 现一个单独的功能。这样便于分别检查和处理。
C Programming
(三)C语言程序调试方法 • 总之,程序调试是一项深入细致的工作,需要下 功夫,动脑子,善于积累经验。在程序调试过程 中往往反映出一个人的水平、经验和态度。希望 大家给以足够的重视。上机调试程序的目的决不 是为了“验证程序的正确”,而是“掌握调试的 方法和技术”,要学会自己找问题,这样慢慢自 己就会写出错误较少的实用程序。
• 例如:使用了不正确的变量类型、循环条件不正 确、程序设计算法考虑不周等。
• 一般情况下,编译器在编译程序时,不能检查到 程序的逻辑错误,也不会产生逻辑错误提示信息。
C Programming
(二)语法错误的分类
• 语法错误的调试,可以由集成开发环境提供的调 试功能来完成,在程序进行编译时,编译器会对 程序中的语法错误进行诊断。
C语言程序常见错误与调试方法
(一)C语言程序常见错误 • 程序设计很少能够没有错误的一次完成,在编程 的过程中由于种种原因,总会出现这样或那样的 错误,这些程序的错误也就是常说的“Bug”, 而检测并修正这些错误就是“Debug”(调试)。 • 程序错误可分为三类:语法错误、运行错误和逻 辑错误。
C Programming
(三)C语言程序调试方法 3、对运行结果作分析,看它是否符合要求。
• 有的初学者看到运行结果就认为没问题了,不作 认真分析,这是危险的。 • 有时,数据比较复杂,难以立即判断结果是否正 确。可以事先考虑好一批“试验数据”,输入这 些数据可以很容易判断结果正确与否。 • 事实上,当程序复杂时很难把所有的可能情况全 部都试到,选择典型的临界数据作试验即可。
1、先进行人工检查,即静态检查。
• 在写好一个程序以后,不要匆匆忙忙上机,而应 对程序进行人工检查。这一步十分重要,它能发 现由于疏忽而造成的多数错误。这一步往往容易 被人忽视,总希望把一切都推给计算机去做,但 这样会多占用机器时间,作为一个程序设计人员 应当养成严谨的作风,每一步都要严格把关,不 把问题留给后面的工序。
相关文档
最新文档