前言
一名优秀的程序员是一名出色的侦探。
每一次调试都是尝试破案的过程。
一、调试步骤
二、几个常用的调试快捷键
F9断点调试在跨文件时特别有用。直接将断点设置在函数内部。
F10,F11可以配合使用,F11在处理函数时可以进入到函数内部。
注意:下面的窗口必须先调试才能看见。
未调试,你只能看见这样:
三、一些常用调试窗口及功能
1.自动窗口
全部变量展示出来,会自作主张的为你添加和删除变量,有时不好用,它会增加一些你不需要的局部变量,而删除一些你需要的局部变量。
2.局部变量
与自动窗口类似,自动加载程序在运行过程中的上下文局部变量。
3.监视中的监视窗口
是最好的,它可以让你自己添加想要观察的变量进行观察。总之,想观察什么都可以。地址之类都可。
要注意:如果你监视的是一个数组,只输入首地址名,你可能看不见其中数组元素值,可以用arr,n来看到数组中n个元素的值。
4.观察内存地址
调试后,找到内存。然后在地址框输入自己希望查找的变量地址,如&a。地址显示是以16进制显示,且遵循小堆(字节逆序)排列。
调整里面地址排列,可以在…中把他调成4列,这样一排就是一个整型地址。
5.可以看到反汇编
调试起来后,右击鼠标,有一个转到反汇编,可以看到在计算机翻译成汇编代码的模样。
以及寄存器等等都可。
6.可以看到调用堆栈
在调用堆栈选项中,鼠标左击右键,显示外部代码,可以表现为下面一样。
在里面可以看到程序的调用过程。