监视和内存观察及调试实例

#include <stdio.h>
int main()
{
 int arr[10] = { 0 };
 int num = 100;
 char c = 'w';
 int i = 0;
 for (i = 0; i < 10; i++)
 {
 arr[i] = i;
 }
 return 0;
}

5.1监视

开始调试后,在菜单栏中【调试】->【窗⼝】->【监视】,打开任意⼀个监视窗⼝,输⼊想要观察的对象就⾏。

5.2内存

如果监视窗⼝看的不够仔细,也是可以观察变量在内存中的存储情况,还是在【调试】->【窗口】-> 【内存】在打开内存窗⼝后,要在地址栏 比特就业课 输⼊:arr,&num,&c,这类地址,就能观察到该地址处的数据。

6.调试实例

#include <stdio.h>
int main()
{
 int i = 0;
 int arr[10] = {0};
 for(i=0; i<=12; i++)
 {
 arr[i] = 0;
 printf("hehe\n");
 }
 return 0;
}


上面代码的运行结果是死循环,原因是:内存布局随着数组下标的增⻓,往后越界就有可能覆盖到i,这样就可能造成死循环的。

补充:

1. 栈区内存的使⽤习惯是从⾼地址向 低地址使⽤的,所以变量i的地址是 较⼤的。arr数组的地址整体是⼩于i的地址。

2. 数组在内存中的存放是:随着下标 的增⻓,地址是由低到⾼变化的。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值