Visual Studio调试基本过程
最近因为工作需要,正在了解VS。在网上找了一些不错的介绍VS调试的文章,翻译整理成文。本文介绍Visual Studio调试基本过程。包括如下内容:Just My Code; Start, Break, Step, Run through Code, and Stop Debugging in Visual Studio;Attach to a process;使用断点和Break All(全部中断)来中断代码;Step into/over/out;运行到一个特定位置或特定函数;设置下一条要执行的语句;进入系统调用;停止调试。
我之前写代码都是在Linux & g++环境,所以对Microsoft的Visual Studio(VS)的debug环境不熟悉(gdb好像也不熟悉L)。最近因为工作需要,正在了解VS。在网上找了一些不错的介绍VS调试的文章,翻译整理成文,因为内容较多,本文没有完全对照原文翻译(部分词未翻译)。
Visual Studio调试基本过程
来源:MSDN
Just My Code.
Just My Code(只调试我的代码)能够帮助我们在调试的时候,跳过system, framework和其他non-user calls。在VS2013中,Just My Code扩展到了C++和Javascript语言的调试。当Step Into到non-user code时,调试器会跳到下一行user code。
开启/关闭Just My Code:设置路径:Option and Setting / Debugging / General / choose or clear Enable Just My Code.
Start, Break, Step, Run through Code, and Stop Debugging in Visual Studio
Debug/Start Debugging (F5):应用程序会开始运行,直到遇到断点。
Debug/Step Into(F11)或者Step Over(F10):应用程序开始执行,在第一行停止。
Attach to a process
调试VS之外的某个进程。Debug/Attach to Process。
使用断点和Break All(全部中断)来中断代码
设置断点:鼠标点击对应代码行,按F9。
Break All(全部中断):如果程序已经跑起来了,你想进入中断模式,就可以Debug/Break All。这样允许你在任何位置停止执行并调试。
Step into/over/out
Step into(F11):进入调用的函数。
Step over(F10):执行函数,停在函数后面的一行。
Step out(Shift + F11):跳出这个函数。
运行到一个特定位置或特定函数
运行到光标的位置:移动光标到你想中断的位置,右键/运行到光标处。
在指定的函数名处停止:Debug/New Breakpoint/Break at Function.
设置下一条要执行的语句
可以用鼠标移动黄色箭头设置下一条要执行的语句。
进入系统调用
前提是加载了对应的调试符号表 & Just My Code功能关闭了。生效的调试跟之前一样了。
加载符号表模块:Ctrl+Alt+U打开模块窗口,选择要加载的模块。
停止调试
Debug/Stop Debugging 或者 Shift+F5.