小编use*_*147的帖子

C上的地址空间相同

我有一个问题,有些人可以帮助我

我目前有这个代码(这些都是全局变量)

    int * x;
    int * y;
Run Code Online (Sandbox Code Playgroud)

现在,在main方法上我想得到那两个的地址空间,如下所示

    int main ( int argc, char *argv[ ] ){
     printf("%p\n",x);
     printf("%p\n",y);
     system("pause");
     return 0;
     }
Run Code Online (Sandbox Code Playgroud)

在这两种情况下,我得到00000000作为地址空间(好像他们"共享"相同的地址空间)我的问题是1)为什么它的地址空间为0?由于我们正在讨论全局变量,因此它应该采用另一个地址2)当它们应该采用000000和000004时,为什么两个变量在内存中共享相同的空间(假设赋值是正确的)

提前感谢您的回答

c pointers global-variables memory-address

0
推荐指数
1
解决办法
98
查看次数

标签 统计

c ×1

global-variables ×1

memory-address ×1

pointers ×1