1.普通的断点调试

(1)快捷键F9(对应“调试”-“切换断点”命令),用于给光标所在的行增加断点(设置断点)或取消该行已有的断点,断点行最前面会有一个红色的小圆球表示该行有一个断点,如图1.11所示,可以通过将光标定位到多个行并每次都按F9键来为多个行增加断点。

(2)快捷键F5(对应“调试”→“开始调试”命令),用于开始执行程序,遇到第一个断点行就停下来,如图1.12所示,程序停到了第8行,这个红色圆球中间多了一个向右指向的黄色小箭头,表示程序执行流程停止到了这一行(虽然停止到了这一行,但是此刻这一行还没有被执行,表示即将要执行)。

(3)此时.因为程序执行流程已经停了下来,处于程序员(我们)的控制之中,所以就在此刻,可以多次使用快捷键F10(对应“调试”-“逐过程”命令),从当前停下来的这行开始~行一行地执行下去,一边逐行执行,一边可以观察程序的执行走向(例如,如果是条件语句就会因为不同的条件执行不同的分支)以及各种变量的值,从而达到调试的目的。

(4)如果断点停在了一个自定义函数调用行,并且希望跟踪到这个函数里面的语句行中去,使用快捷键F11(对应“调试”一“逐语句”命令)就可以跳到函数中继续跟踪调试,如果想从当前所在的函数跳出去, 使用快捷键Shift+F 11(对应“调试"–^跳出*命令) , 就能够跳回到该函数的调用处并继续往下跟踪调试。

2.学会在调试时查看内存中的内容

如图,按F5键执行整个程序, 使断点停在printf行上,则此时此刻就处于了调试程序中。

如图示在此种状态下按下快捷键Alt+6或者图1.13正处于调试程序状态中选择==“调试”→“窗口”→“内存”→“内存1”命令==, 则在整个VisualStudio 2019的下方, 就打开了内存查看窗口,如图1.14所示。

只需要在上图左上角位置“地址”右侧的编辑框中输人地址符“&.”,后面跟要查看的变量名, 然后按一下Enter键(如这里输人&aaa并按Enter键) , 就可以看该变量的地址所代表的内存中的内容。
当然,在第一个所示的第69行,选中aaa这个变量名,直接按住鼠标左键往上图中左上角位置“地址”右侧的编辑框中拖动并按Enter键, 也能达到查看aaa变量所代表的内存中内容的目的,如图所示。

参考书籍:《c++新经典:对象模型 》—王健伟

Visual Studio中程序调试的方法相关推荐

  1. C#在 Visual Studio 中快捷生成toString方法重写

    C#在 Visual Studio 中快捷生成toString方法重写 操作说明 在 C# 类代码中键入 override 中键入 Overrides,后接空格(可在此处插入重写方法).

  2. CMake设置Visual Studio工程的调试环境变量和工作目录cwd的方法

    1.设置在Visual Studio中调试的环境变量,此设置仅仅在VS中点击那个绿色三角运行时有效,与你直接双击打开exe文件运行无关,有效避免多版本动态库全部写入系统环境变量的污染问题: # Vis ...

  3. 探究Visual Studio中的乱码问题

    关于乱码,没遇到皆大欢喜,遇到了头痛不已.在Visual Studio中程序遇到乱码,需要明确三个概念,那么问题就好解决了. 三个字符集概念 源码字符集 MSVC中/source-charset 即源 ...

  4. Visual studio 中调试ASP程序、Javascript 代码 - 刘稻博客

    2019独角兽企业重金招聘Python工程师标准>>> PS: 1.在调试asp时,要先附加进程(附加到:自动:与具体调试网站对应的 dllhost.exe 或 w3wp.exe . ...

  5. 关于 Microsoft Visual Studio 2005 无法调试应用程序的解决方法

    关于 Microsoft Visual Studio 2005 无法调试应用程序的解决方法 (downmoon) 在VS 2005 中编写Windows的应用程序时,提示:试图运行项目时出错:无法启动 ...

  6. 在Visual Studio中调试samples中可能出现的错误

    在Visual Studio中调试samples中可能出现的错误 进入samples/opencl文件夹下,打开OpenCLSamples.sln,然后选择" 生成 -> 重新生成解决 ...

  7. 在Visual Studio中使用命令行参数进行调试

    我正在Visual Studio中开发一个C ++命令行应用程序,需要使用命令行参数进行调试. 目前我只使用我需要的参数(如此program.exe -file.txt )运行生成的EXE文件,但这样 ...

  8. vs远程编译linux程序,使用Visual Studio 2015远程调试Linux程序

    ##安装 Visual Studio 2015 安装时注意将跨平台移动开发->Visual C++移动开发->Viaual C++ Android 开发的选项勾上 ##安装PUTTY Vi ...

  9. 关于Visual Studio 中“scanf”输入报错的解决方法

    有很多初次接触VS的同学会发现,当我们在写完一段代码,代码中用到scanf输入变量时,在调试编译的过程中就会出现错误: warning C4996: 'scanf': "This funct ...

最新文章

  1. “Python之父”从Dropbox退休
  2. Python面对对象编程——对象、类详解及实例
  3. WordPress制作圆形头像友情链接页面的方法
  4. Jmeter性能测试之ForEach控制器的使用
  5. python怎么读文件名-Python获取指定文件夹下的文件名
  6. 代码实现把字符串反转
  7. yum安装zlib出错
  8. python安装第三方包总是超时_(python pip安装第三方库超时问题(raise ReadTimeoutErrorself._pool, None, 'Read timed out.')...
  9. MapReduce算法–了解数据联接第1部分
  10. LeetCode387-字符串中的第一个唯一字符(查找,自定义数据结构)
  11. JPA 实体生命周期图
  12. JavaScript:语言精粹
  13. html中table边框属性
  14. 应用:文件夹copy器(多进程版)
  15. 善用佳软站长:畅谈大数据时代的知识管理
  16. 每个国家对应的语言Locale和国家代码对照表
  17. 全开源三网免挂码支付系统源码/支付宝H5微信QQ免签支付源码/二维码收款免签支付系统源码
  18. 测试通达信指标胜率的软件,如何检测通达信选股公式的成功率?不懂得可以收藏起来自己测一下...
  19. 计算机专业监理员工作,监理员是干什么的
  20. Oracle19C下载安装教程(图文详解)

热门文章

  1. oracle 数据库怎么查询,Oracle 数据库基础查询
  2. 收藏 | 数据分析师面试指南——自我定位篇
  3. 四次元Android微博客户端 修改
  4. JavaBasic-接口
  5. 维智科技AI驱动的银行智能决策
  6. Zookeeper VS Chubby
  7. 论文阅读|TransPose
  8. 清除系统垃圾win7.bat【在前人基础上修改而成】
  9. 转义符、换行符、制表符
  10. 传统图像处理之随机脉冲噪声检测