首页 > 解决方案 > 变量的地址存储在内存中的什么位置?

问题描述

每当我们需要找到变量的地址时,我们在 C 中使用下面的语法,它会打印变量的地址。我想了解的是返回的地址是实际的物理内存位置或编译器抛出一些随机数。如果它是物理的或随机的,它是从哪里获得这些数字的,或者它必须存储在内存中的哪里。实际上内存位置的地址是否在内存中占用空间?

int a = 10;
printf("ADDRESS:%d",&a);

地址:2234xxxxxxxx

标签: cmemory

解决方案


该位置来自分配给您的程序的虚拟地址空间。换句话说,这是来自虚拟内存,您的操作系统在需要时将其映射到物理内存。


推荐阅读