- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CC中错误分析及程序调试.
C语言程序的调试
? 写程序代码时,一般好不容易写完了,可就是编译通不过啊,都是错误急死人啊,都想放弃的,是不是啊其实要有耐心和毅力的,好学的话都会了,您还有学的必要吗? 所谓程序调试是指对程序的查错和排错。
? 调试程序一般应经过以下几个步骤:
?1先进行人工检查,即静态检查。在写好一个程序以后,不要匆匆忙忙上机,而应对纸面上的程序进行人工检查。这一步是十分重要的,它能发现程序设计人员由于疏忽而造成的多数错误。而这一步骤往往容易被人忽视。为了更有效地进行人工检查,所编的程序应注意力求做到以下几点:应当采用结构化程序方法编程,以增加可读性;尽可能多加注释,以帮助理解每段程序的作用;在编写复杂的程序时不要将全部语句都写在main函数中,而要多利用函数,用一个函数来实现一个单独的功能。这样既易于阅读也便于调试,便于分别检查和处理。
?2在人工检查无误后,才可以上机调试。通过上机发现错误称动态检查。在编译时给出语法错误的信息,可以根据提示的信息具体找出程序中出错之处并改正之。应当注意的是有时提示的出错并不是真正出错的行,如果在提示出错的行上找不到错误的话应当到上一行再找。有时提示出错的类型并非绝对准确,由于出错的情况繁多各种错误互有关联,要善于分析,找出真正的错误,而不要只从字面意义上找出错信息,钻牛角尖。
?如果系统提示的出错信息多,应当从上到下一一改正。有时显示出一大片出错信息往往使人感到问题严重,无从下手。其实可能只有一二个错误。例如,对使用的变量未定义,编译时就会对所有含该变量的语句发出出错信息;有的是少了“}”或多了“}”有的是书写语句时忘记写“;”或是全角的“;”了,只要加上一个变量定义,或填加“};”就所有错误都消除了。”}”,就不会漏了或多了匹配符号。
3在改正语法错误后,程序经过连接就得到可执行的目标程序。运行程序,输入程序所需数据,就可得到运行结果。应当对运行结果作分析。看它是否符合要求。有的看到运行结果就认为没问题了,不作分析,这是的。
? 有时,数据比较复杂,难以立即判断结果是否正确。可以事先考虑好一批“试验数据”,输入这些数据可以得出容易判断正确与否的结果。例如,if语句有两个分支,有可能在流程经过其中一个分支时结果正确,而经过其它一个分支时结果不对等。必须考虑周全。
?事实上,当程序复杂时很难把所有的可能方案全部都试到,选择典型的情况作试验即可。
?4 运行结果不对,大多属于逻辑错误。对这类错误往往需要仔细检查和分析才能发现。可以采用以下办法:
? 将程序与流程图仔细对照,如果流程图是正确的话,程序写错了,是很容易发现的。例如,复合语句忘记写花括弧,只要一对照流程图就能很快发现。
? 如果实在找不到错误,可以采用“分段检查”的方法。在程序不同的位置设几个printf函数语句,输出有关变量的值,往下检查。直到找到在哪一段中数据不对为止。这时就已经把错误局限在这一段中了。不断减小“查错区”,就可能发现错误所在。
printf函数语句系统提供调试工具,跟踪流程并给出相应信息,使用更为方便
? 总之,程序调试是一项细致的工作,需要下功夫,动脑子,善于累积经验。在程序调试过程中往往反映出一个人的“掌握调试的方法和技术”,要学会自己找问题,这样慢慢自己就会写出错误较少的实用的程序。
C、C++中错误分析及程序调试
若如现:
文件存放目录问题
程序调试方法介绍
一、设置
为了调试一个程序,首先必须使程序中包含调试信息。一般情况下,一个从AppWizard创建的工程中包含的Debug Configuration自动包含调试信息,但是是不是Debug版本并不是程序包含调试信息的决定因素,程序设计者可以在任意的Configuration中增加调试信息。
为了增加调试信息,可以按照下述步骤进行:
打开Project settings对话框(可以通过快捷键ALT+F7打开,也可以通过IDE菜单Project/Settings打开)
选择C/C++页,Category中选择general ,则出现一个Debug Info下拉列表框,可供选择的调试信息方式包括:
命令行 Project settings 说明 无 None 没有调试信息 /Zd Line Numbers Only 目标文件或者可执行文件中只包含全局和导出符号以及代码行信息,不包含符号调试信息 /Z7 C 7.0- Compatible 目标文件或者可执行文件中包含行号和所有符号调试信息,包括变量名及类型,函数及原型等 /Zi Program Database 创建一个程序库(PDB),包括类型信息和符号调试信息。 /ZI Program Database for Edit and Continue 除了前面/Zi的功能外,这
您可能关注的文档
- 196个青少年团伙犯罪的调查和分析..doc
- 1加油站安全评价导则..doc
- 1动物性食品中受体激动剂残留测定的标准操作程序..doc
- 1}大体积溷凝土施工方案..doc
- 1趋势跟踪系统的形成历程(一个期货老手的真情告白)..doc
- 2.促进高中生自我探索的活动解说的思考与实践..doc
- 2.《建设工程设计合同示范文本(专业建设工程)》(GF20150210)..doc
- 1地下水环境监测技术培训讲义..doc
- 2.城市设计历史发展..doc
- 2.新德公司网络综合布线设计方案..doc
- 2025年分红险:低利率环境下产品体系重构.pdf
- 大学生职业规划大赛《应用物理学专业》生涯发展展示PPT.pptx
- 大学生职业规划大赛《新媒体技术专业》生涯发展展示PPT.pptx
- 七年级上册英语同步备课(人教2024)Unit 3 课时2 Section A(2a-2f)(同步课件).pdf
- 七年级上册英语同步备课(人教2024)Unit 2 课时4 Section B(1a-1d)(同步课件).pdf
- 七年级上册英语同步备课(人教2024)Unit 3课时6 project(课件).pdf
- 2025年港口行业报告:从财务指标出发看港口分红提升潜力.pdf
- 2023年北京市海淀区初一(七年级)下学期期末考试数学试卷(含答案).pdf
- 2026年高考化学一轮复习第7周氯及其化合物、硫及其化合物.docx
- 2023年北京市西城区北京四中初一(七年级)下学期期中考试数学试卷(含答案).pdf
最近下载
- DB43_T 2927-2024 中医护理门诊建设与管理规范.docx VIP
- 某某居民社区各岗位廉政风险点及防控措施一览表.pdf VIP
- IPC-TM-650测试方法手册CN2020必威体育精装版(104个方法)扫描版.pdf VIP
- 二次结构施工方案(完整).doc VIP
- 斯巴拓SBT951(952)(953)仪表显示器说明书.doc VIP
- 油藏地球物理及其应用_part1.ppt VIP
- 000缠论实战完整版.pdf
- 《立在地球边上放号》课件.pptx VIP
- 第十章 概率(单元测试卷)(含解析)——2023-2024学年高一下学期数学必修第二册(人教A版(2019)).pdf VIP
- 2023福建莆田国有资本运营集团有限公司招聘企业员工25人笔试备考试题及答案解析.docx VIP
文档评论(0)