windows下断点调试监视变量的小技巧

假设我断点到一个变量,想知道变量前后地址的值,那怎么办呢

看图,

 

windows下断点调试监视变量的小技巧

 

这是连个类的定义,我们看下运行时

windows下断点调试监视变量的小技巧

添加一个监视(A*)(ph +sizeof(head)) ,就得到以ph为基准偏移sizeof(head)的一个地址。 把这个地址解释为A*,那么久可以查看A->a的值了,往下运行,看看最后是不是等于1,

windows下断点调试监视变量的小技巧

 

显然我们是失败了,并不等于1,那么验证下地址是不是偏移错了

windows下断点调试监视变量的小技巧

确实地址偏的太远了点,那么改成(A*)((char*)ph + sizeof(head)) , 验证

 

windows下断点调试监视变量的小技巧

这下正确了,总结来说就是可以根据一个变量获取前后紧凑内存的值,对于调试数组这种连续变量或者内存池的额外信息有帮助。