C++_ch07_visual studio调试代码

C++_ch07_visual studio调试代码

1.1 Break Point

断点就是程序执行到这里就会暂停,一个程序可以设置很多短点。在visual studio中只需要点击侧栏就可以设置断点。
在这里插入图片描述
点击左边的栏目,出现红点就是设置的断点。
另外要确保打断点的位置必须是可执行的代码,不然断点就没有意义。

此外,打断点必须是在Debug模式下进行。这样才有意义。
在这里插入图片描述

断点方便我们逐行执行代码,并观察问题出现在哪里。

1.2、用一段代码认识调试的过程

#include<iostream>

int multiply(int a,int b)
{
	return a*b;
}

int main()
{
	int n = 0;
	n = multiply(3,4);
	n++;
	const char* var = "Hello";
	for( int i = 0 ; i < 5 ; i++ )
	{
		const char c = var[i];
		std::cout<<c<<std::endl;
	}
	std::cin.get();
	return 0;
}

在这里插入图片描述
观察这个完整的界面:

1.2.1 黄色箭头

在这里插入图片描述
这个黄色箭头表示还没有运行但是即将运行所指向的那一行代码,只要你按了这个键:或者按F11
在这里插入图片描述
这个的意思是运行下一行代码。那么就会继续执行下去。

1.2.2观察变量区

在这里插入图片描述
注意看我们运行到我所设置的断电时已经有了n和var两个变量,此时n的值是13,那么我们可以肯定

int n = 0;
	n = multiply(3,4);
	n++;

这3行已经被执行了,var内的值为啥是这样的呢?因为在断点处我们的var还没被初始化。一旦我们继续运行,他的值就会变:
在这里插入图片描述
红色,表示该值马上就要改变了。再继续运行
在这里插入图片描述
此时var已经接受到了"Hello"这个值,并且var[i]已经知道了,因为我们已经进入了循环,计算机知道我们的变量i是0了。所以var[0] = ‘H’。

这个时候终端还没有任何输出:
在这里插入图片描述

1.2.3、观察内存

内存视图如何找:
在这里插入图片描述
会弹出这样的窗口:

在这里插入图片描述
左边灰色的是地址栏,右边是存储的数据。
如果我们要找到固定变量在内存中的地址和存储的数据,以n为例,只需要输入

&n

在这里插入图片描述
就可以看到n对应的是这个地址:
在这里插入图片描述
这里的0d是十六进制数。
d代表13。那么0d存储的就是13这个整数。我们可以看到n在此时确实是13.我们为了观察内存,可以看看n在内存中是不是慢慢变成13的。
在这里插入图片描述
此时内存存储的是0:
在这里插入图片描述
此时内存变成12。

在这里插入图片描述

此时内存变成了13。
内存确实是按照预想的变化的。

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值