vc++60程序调试设置断点.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
VC++6.0调试工具使用初步 分类: C++ 2012-10-30 16:41 382人阅读 评论(2) 收藏 举报 【摘要】程序设计初者学会IDE(集成开发环境)中提供的调试工具,是一件非常重要的事。本文在初学者有初步的程序设计体验(只需要掌握到控制结构)为前提,介绍了单步执行、断点设置及观察程序运行情况的方法,并配有练习的建议,方便读者的学习。   在编写程序中,尤其是完成一个工程的过程中,通过编译的程序往往也会存在错误(bug)。这种错误是运行错误和逻辑错误,比语法错误更隐蔽,更危险。   如何找出这些错误?在冗长的代码中,找出这些错误来并不总是一件容易的事。排错(debug)是一件程序员不得不面对的麻烦事,但真正的程序员会把与bug战斗当成自己的神圣使命。   调试程序是程序员应该具备的基本能力。在学习编写程序过程中,学会调试程序是最实用的技能之一。可以纯粹依靠人工,一行一行,或一块一块地检查,思考,很累人。也可以像现有的各种教材及课堂教学中介绍的,输出变量及中间变量(用输出语句cout...;),以观察运行结果及运行的中间结果。这种方法简洁方便,但增加了写代码的维护量,同时,有时并不能方便地找到问题所在。   在实际的工作中,调试工作常用IDE(集成开发环境,如VC++6.0)提供的工具进行。本文旨在指导同学们初步学会利用VC++6.0调试程序的方法,学会单步运行程序和使用断点的方法,并在过程中观察运行环境(最重要的是变量)的变化,从而在今后能够高效地完成程序的调试。   一、认识调试功能   在组建(build)菜单中,点击开始调试(start debug),在其下级子菜单中,包含了启动调试器运行的各项子命令(如图1所示)                图1 开始调试菜单   各子命令及其功能如下:  Go:从程序中的当前语句开始执行,直到遇到断点(后面讲)或遇到程序结束。 Step Into:控制程序单步执行,并在遇到函数调用时进入函数内部。 Run to Cursor:在调试运行程序时,使程序运行到当前光标所在位置时停止,相当于设置了一个临时断点。   二、单步调试代码   利用图1菜单中的Step into功能或按F11键,进入单步调试状态,有一个箭头指向程序的第一行,每按一次F11键,程序再向前执行一行语句,如图2所示。                图2 开始调试后的界面   我们对图2的界面进行观察。   首先,菜单中增加一个调试(debug)菜单,如图中处,下面是菜单中的部分功能(鼠标浮到上面时,会有提示,请试一试。) Step Into(F11):单步调试程序,遇到调用函数时,进入函数内部逐步执行; Step Over(F10):也是单步调试程序,遇到调用函数时,并不进入函数内容执行; Step Out:调试程序时,从正在执行的某个嵌套结构的内部跳到该结构的外部,常用于知道调用函数中不存在错误的情况; Run to Cursor(CTRL-F10):调试程序时,直接运行到插入点处。   其次,和当前正在执行的语句相关的变量,以及其当前的值显示在了处。?   再次,黄色箭头代表了正在执行的位置。   【练习1】   下面,针对求1+2+3+...+100的程序,体验单步执行。步骤:   (1)编写如图所示求1+2+3+...+100的程序,排除编译错误;   (2)按前述开始单步执行,用“Step Into(F11)”持续执行,在执行过程中,注意观察变量的变化。 调试中,要将自己的预期和计算机执行的结果进行比较,当发现不一致,恭喜,问题找到了。 本程序循环要执行100次!有的程序进入循环要执行的次数更多,而初步跟踪确定循环不可能出问题,需要快速“跳出”循环。将光标移到循环后,用“Run to Cursor”,程序即运行到光标处。 在cout...一行继续F11,会吓人一跳,出现的界面是:         图3 程序会运行到“看不懂”的代码中去,用Step Out功能退出   这是因为F11的单步运行,进入到了实现cout功能的代码中去了(教训:以后再到这儿,切记用Step Over(F10),而不是Step Into(F11)),此时请用Step Out功能可以退出。   【练习2】再将上面的过程进行几遍,熟练上述过程,学会观察,会灵活使用Step Over(F10)、Step Into(F11)、Step Out和Run to Cursor处理。   提示:Step Over(F10)和Step Into(F11)的区别将在学习函数后更加明确,需要跟踪自定义函数内部代码时,用Step Into(F11),不需要跟踪时,就Over过去了。   【练习3】将光标置于

文档评论(0)

dashewan + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档