原创 Maye426 C语言Plus 2月19日

简单示例,VS如何调试C/C++程序_c++

代码调试是程序员必须掌握的一门技巧,掌握代码调试对以后学习,错误排除,源码研究等都有很大的帮助。


前言

再牛的程序员也没法一口气把代码全部写正确,通常做法就是写一小段然后验证代码正确性,再继续写下一段,这样能保证代码不会错得太离谱。怎么衡量一小段代码呢?在你觉得这段代码没有十足把握的情况下就应该停下来验证一下。

调试的本质是确认你认为正确的事情确实是正确的,这次来介绍一下 Vs中调试代码的 N 种姿势

断点调试常用术语

“单步进入”step into:就是单步执行,遇到子函数就进入并且继续单步执行;

“单步执行并跳过”step over:是在单步执行时,在函数内遇到子函数时不会进入子函数内单步执行,而是将子函数整个执行完再停止,也就是把子函数整个作为一步。

“单步执行并返回”step return:就是单步执行到子函数内时,用step return就可以执行完子函数余下部分,并返回到上一层函
数。

“继续执行”:即跳过此断点继续运行。

简单的例子

先来看一个简单的代码,如下,代码很简单,结果显而易见,咱们来调试一下这个代码

简单示例,VS如何调试C/C++程序_c++_02

1,进入调试

点击菜单栏->调试->逐语句 或者使用快捷键“F11”

简单示例,VS如何调试C/C++程序_c++_03

进入之后,在main函数的第一行,会出现一个黄色小箭头,代表这此时代码执行到的位置。

简单示例,VS如何调试C/C++程序_c++_04

接下来继续按"F11",即可逐步执行每行代码了,执行的过程中,我们需要查看变量的值的变化,菜单栏->调试->窗口->局部变量,先点击这个打开局部变量窗口

此时我们会在下面的窗口中看到变量,目前在内存里面的数据及类型

当我们继续执行时,会发现局部变量窗口中的变量的值发生了改变,很直观即可看到结果

当执行到函数调用语句时,会进入函数内部执行,而且局部变量里面会同步显示函数里面的变量信息

函数执行结束,会返回到调用处,而且局部变量窗口会显示返回值信息

简单示例,VS如何调试C/C++程序_c++_05

这就是逐步调试一个简单的流程,你学会了吗?

逐步调试配合断点

再来看一个简单的代码,如下

简单示例,VS如何调试C/C++程序_c++_06

如果按"F11"使用单步调试,那么我们需要在循环处,按10次才能执行到printf语句。我们可以结合断点,快速跳过循环。

1,添加断点

把光标移动到需要加断点的行,后按"F9",或者用鼠标在需要加断点的行前面的灰色区域点一下。

简单示例,VS如何调试C/C++程序_c++_07

2,跳过循环

首先逐步调试到循环处,然后按"继续"即可直接执行到最近的断点所在的行

简单示例,VS如何调试C/C++程序_c++_08

点“继续”直接跳转到断点处

简单示例,VS如何调试C/C++程序_c++_09

简单示例,VS如何调试C/C++程序_c++_10


3,删除断点

重复添加断点的步骤即可