木子木子不死心 发表于 2022-8-8 00:27:26

小白对指针的疑问

这段代码每次运行出来都是不同的结果,请问是哪里有问题。
#include <stdio.h>

int main()
{
    int *a, b;

    b = 110;
    a = &b;

    printf("%p\n", a);

    return 0;
}

临时号 发表于 2022-8-8 00:34:13

变量在内存中的地址是不固定的,所以每次才会有不同的结果,你的代码没错

额外减小 发表于 2022-8-8 00:39:02

每一次都是把b变量放在内存的不同位置,

柿子饼同学 发表于 2022-8-8 09:44:34

地址不是固定的

康总 发表于 2022-8-8 16:05:09

最简单的方法:你可以把变量b的地址打印出来,然后比较就ok了

floating_clouds 发表于 2022-8-8 16:17:06

a是个指针吧,同时把a指向的是b,换而言之a是b的地址,其实计算机有时候在栈区创建的变量每次的地址会不同。

木子木子不死心 发表于 2022-8-9 05:56:24

感谢各位大佬

liuzhengyuan 发表于 2022-8-10 04:08:33

木子木子不死心 发表于 2022-8-9 05:56
感谢各位大佬

如果问题解决了请选一个最满意答案设为最佳答案,谢谢
页: [1]
查看完整版本: 小白对指针的疑问