VS断点调试技巧
条件断点:
条件断点就是当满足某种条件时才会触发的断点。
例如在循环体中,我们想查看第一万次循环的结果,显然不能一步一步运行程序,而应当在断点处设置条件。
使用流程:
1、首先需要打一个断点
2、在断点处点击设置按钮
跳出如下提示框
3、然后勾选条件,并填入断点的条件
4、开始调试,会看到断点被触发了(注意颜色和一般的断点不一样)
5、查看相关信息
断点操作:
在断点设置中,不仅有条件,还有操作,借助操作,我们可以打印一些信息,利用VS的这个功能,可以不用在代码中显示的写打印代码了~(当然这是有利有弊的,打印信息直接写在代码中,可以更快复现,结合宏来使用也非常方便,而这种断点操作,复现麻烦,适合用于排错)。
例如我们需要在循环体中查看值的变化,但不想写修改代码,这个时候就可以借助断点操作了。
操作流程
1、首先需要打一个断点
2、在断点处点击设置按钮
跳出如下提示框
3、勾选操作,并填入需要打印的信息
注意 {} 表示中间的是一个变量
输出结果会在输出窗口中打印
4、开始调试,会看到断点被触发了(注意颜色和一般的不一样)
如下是输出窗口的输出:
5、且断点操作可以和条件断点结合使用
输出如下:
6、VS提供的特殊变量,可以在断点操作中打印其信息
利用这些特殊变量可以很容易的获取当前程序运行的一些信息,注意其前缀都为$
其具体含义如下:
$ADDRESS 当前指令的地址
$CALLED 调用当前函数的函数名称
$CALLSTACK 当前调用堆栈
$FILEPOS 当前文件和行位置
$FUNCTION 当前函数的名称
$PID 当前进程的ID
$PNAME 当前进程的名称
$TICK 自系统运行以来的毫秒数,最大为49.7天
$TID 当前线程的ID
$TNAME 当前线程的名称
例子:输出当前断点所在的文件、行位置及当前函数的名称
输出: