【vc++精品源码栏目提醒】:网学会员为广大网友收集整理了,【精品】VC++调试快捷键 - 网络与通信,希望对大家有所帮助!
VC 调试快捷键一、调试基础调试快捷键F5: 开始调试ShiftF5: 停止调试F10: 调试到下一句,这里是单步跟踪F11: 调试到下一句,跟进函数内部ShiftF11:从当前函数中跳出CtrlF10:调试到光标所在位置F9: 设置(取消)断点AltF9:高级断点设置跟踪调试1、尽量使用快捷键时行调试2、观察调试信息3、高级中断设置异常调试重试-取消-调试函数堆栈,用 variables 或者 callstack 窗口Release 调试1、经常测试你的 Debug 和 Release 版本2、不要移除调试代码,如用 ASSERTTRACE 等。
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‐debuginfo 选择 programDataBase(中文版是项目‐属性‐C/C‐常规‐调试信息格式‐用于“编辑并继续”的程序数据库),project-setting‐link 选上 Generatedebuginfo中文版是项目‐属性‐链接器‐调试‐生成调试信息8、走读代码,特别关注堆栈和指针二、TRACE 宏当选择了 Debug 目标,并且 afxTraceEnabled 变量被置为 TRUE 时,TRACE 宏也就随之被激活了。
但在程序的 Release 版本中,它们是被完全禁止的。
下面是一个典型的 TRACE语句:…intnCount9CStringstrDesctotalTRACECountdDescriptionsnnCountstrDesc…可以看到,TRACE 语句的工作方式有点像 C 语言中的 printf 语句,TRACE 宏参数的个数是可变的,因此使用起来非常容易。
如果查看 MFC 的源代码,你根本找不到 TRACE 宏,而只能看到 TRACE0、TRACE1、TRACE2 和 TRACE3 宏,它们的参数分别为 0、1、2、3。
个人总结:最近看网络编程是碰到了 TRACE 语句,不知道在哪里输出,查了一晚上资料也没找出来,今天终于找到了,方法如下:1.在 MFC 中加入 TRACE 语句2.在 TOOLS‐MFCTRACER 中选择 “ENABLETRACING”点击 OK3.进行调试运行,GOF5(特别注意:不是执行‘!’以前之所以不能看到 TRACE 内容,是因为不是调试执行,而是‘!’了,切记,切记)4.然后就会在 OUTPUT 中的 DEBUG 窗口中看到 TRACE 内容了, 调试执行会自动从 BUILD窗口跳到 DEBUG 窗口,在那里就看到 TRACE 的内容了,_以下是找的 TRACE 的详细介绍:==============================TRACE 宏对于 VC 下程序调试来说是很有用的东西,有着类似 printf 的功能;该宏仅仅在程序的 DEBUG 版本中出现,当 RELEASE 的时候该宏就完全消失了,从而帮助你调式也在 RELEASE 的时候减少代码量。
使用非常简单,格式如下:TRACEDDDDDDDDDDDTRACEwewed333 。
同样还存在 TRACE0,TRACE1,TRACE2。
。
分别对应 0,1,2。
。
个参数TRACE 信息输出到 VCIDE 环境的输出窗口 (该窗口是你编译项目出错提示的哪个窗口) ,但仅限于你在 VC 中运行你的 DEBUG 版本的程序。
TRACE 信息还可以使用 DEBUGVIEW 来捕获到。
这种情况下,你不能在 VC 的 IDE 环境中运行你的程序,而将 BUILD 好的 DEBUG 版本的程序单独运行,这个时候可以在DEBUGVIEW 的窗口看到 DEBUGVIE 格式的输出了。
VC 中 TRACE 的用法有以下四种:TRACE1 ,就是不带动态参数输出字符串类似 C 的 printf输出字符串TRACE2:中的字符串可以带一个参数输出类似 C 的 printf...d变量TRACE3:可以带两个参数输出,类似 C 的 printf...d...f变量 1变量 2TRACE4 可以带三个参数输出,类似 C 的 printf...d,dd变量 1变量 2,变量 3TRACE 宏有点象我们以前在 C 语言中用的 Printf 函数, 使程序在运行过程