c基础 - debug调试 根据地址查询该地址对应数据值

1. 概述

下边通过代码演示: 通过打印 i 的地址,然后用 debug的方式调试,用于验证 根据 变量i的地址可以查询出这个地址对应的数据
下边先说下 c语言中的 变量的地址

2. 变量的地址

定义:任何的数据 或者 任何的变量都会有地址,这个地址就相当于我们生活中的住址和门牌号,因为在 c和c++中的所有操作基本都是去操作指针。

3. 代码如下

下边代码意思是:
1>:定义变量 i = 100,用占位符 %p,用于打印输出 i的地址,打印结果为:0034FDC0;
2>:然后采用debug方式调试,把这个地址0034FDC0粘贴到输入框中,用于查询这个地址对应的值,看是否是100,如果这个值是100,就验证了 可以根据地址查询该地址对应的数据,具体debug流程,看下边第4的断点调试

#include  // 导入头文件,头文件都是方法的声明。
void main(){

    int i = 100;
    // &: 表示取变量的地址
    // 通过 debug的调试:我们可以根据地址去查询 该地址对应的数据。
    // int类型是4字节,sizeof():获取数据类型所占字节数
    printf("i的地址是:%p" , &i);
    getchar();
}

说明如下:

1.  &:表示获取变量的地址,&i就是获取 变量i的地址;
2.  int类型是4 字节,sizeof()方法用于获取数据类型所占字节数
4. 断点调试

通过 debug 断点调试,可以根据地址去 查询 该地址对应的数据;

1>:在代码左边单击;
2>:然后点击调试;
3>:然后点击 逐语句,这个是下一步的意思;
4>:这个时候在 doc中,就会打印出i的地址,然后鼠标在doc的上边右键 -> 标记 -> 选中地址 -> 右键 -> 复制,这个时候就会复制这个地址

5>:然后点击 调试下边步骤:


图片.png

6>:然后把上边复制的地址粘贴到这个输入框中,敲回车,会发现地址看不懂,没有关系,这些都是系统的一些地址,不需要关心,发现下边数字是64,不对,这里就需要在这些地址框上边 右键 -> 选中4字节整数,因为int是4字节;


图片.png

7>:然后出现下边图,发现数字不对,还是64;


图片.png

8>:这个时候 100就出来了;


图片.png
debug的结果:

根据 debug调试:我们可以得出:根据 地址可以查询出该地址对应的数据值;

你可能感兴趣的:(c基础 - debug调试 根据地址查询该地址对应数据值)