VC++6.0调试方法大全.pdfVIP

  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文档。上传文档
查看更多
VC6.0调试方法大全

一、调试基础 调试快捷键 F5: 开始调试 Shift+F5: 停止调试 F10: 调试到下一句,这里是单步跟踪 F11: 调试到下一句,跟进函数内部 Shift+F11: 从当前函数中跳出 Ctrl+F10: 调试到光标所在位置 F9: 设置 (取消)断点 Alt+F9: 高级断点设置 跟踪调试 1、 尽量使用快捷键时行调试 2、 观察调试信息 3、 高级中断设置 异常调试 重试-取消-调试 函数堆栈,用 variables 或者 call stack 窗口 Release 调试 1、 经常测试你的 Debug 和 Release 版本 2、 不要移除调试代码,如用 ASSERT, TRACE 等。 3、 初始化变量,特别是全局变量,malloc 的内存,new 的内存 4、 当你移除某个资源时,确保你移除了所有跟这个资源相关的申明 (主要是在 resouce.h 文中) 5、 使用 3 或者 4 级的警告级编译你的代码,并确保没有警告, project-setting-c/c++-warninglevel(中文版是项目-属性-C/C++-常规-警告等级) 6、 _debug 改成 NDEBUG 进行调试,project-setting-C/C++-Preprocessordefinitions (中 文版是项目-属性-C/C++-预处理器-预处理定义)(这里是 debug 和 Release 编译的重要不同之 一) 7、 在 Release 中调试源代码,project-setting-C/C++-debug info 选择 programDataBase (中文版是项目-属性-C/C++-常规-调试信息格式-用于“编辑并继续”的程序数据库),project -setting-link 选上 Generate debug info(中文版是项目-属性-链接器-调试-生成调试信息) 8、 走读代码,特别关注堆栈和指针 二、TRACE 宏 当选择了 Debug 目标,并且 afxTraceEnabled 变量被置为 TRUE 时,TRACE 宏也就随之被激活了。但 在程序的 Release 版本中,它们是被完全禁止的。下面是一个典型的 TRACE 语句: … int nCount =9; CString strDesc(total); TRACE(Count =%d,Description =%s\n,nCount,strDesc); … 可以看到,TRACE 语句的工作方式有点像 C 语言中的 printf 语句,TRACE 宏参数的个数是可变的,因此 使用起来非常容易。如果查看 MFC 的源代码,你根本找不到 TRACE 宏,而只能看到 TRACE0、TRACE1、 TRACE2 和 TRACE3 宏,它们的参数分别为 0、1、2、3。 个人总结:最近看网络编程是碰到了 TRACE 语句,不知道在哪里输出,查了一晚上资料也没找出来,今 天终于找到了,方法如下: 1.在 MFC 中加入TRACE 语句 2.在 TOOLS-MFCTRACER 中选择 “ENABLE TRACING”点击 OK 3.进行调试运行,GO(F5) (特别注意:不是执行‘ !’以前之所以不能看到TRACE 内容,是因为不是调试 执行,而是‘ !’了,切记,切记) 4.然后就会在 OUTPUT 中的 DEBUG 窗口中看到TRACE 内容了,调试执行会自动从 BUILD 窗口跳到 DEBUG 窗口,在那里就看到 TRACE 的内容了,^_^ 以下是找的TRACE 的详细介绍: ============================== TRACE 宏对于 VC 下程序调试来说是很有用的东西,有着类似 printf 的功能;该宏仅仅在程序的 DEBUG 版本中出现,当 RELEASE 的时候该宏就完全消失了,从而帮助你调式也在 RELEASE 的时候减少代码量。 使用非常简单,格式如下: TRACE(DDDDDDDDDDD); TRACE(wewe%d,333); 同样还存在TRACE0,TRACE1,TRACE2 。。。分别对应 0,1,2。。个参数 TRACE 信息输出到 VC IDE 环境的输出窗口 (该窗口是你编译项目出错提示的哪个窗口),但仅限于你在 VC 中运行你的 DEBUG 版本的程序。 TRACE 信息还可以使用 DEBUGVIEW 来捕获到。这种情况下,你不能在 VC

文档评论(0)

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

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

1亿VIP精品文档

相关文档