#include <stdio.h>
int main(){
int i =6;
printf("&i=%p\n",&i);//输出0x62FE14
int *p =0x62FE14;
printf("*p=%d\n",*p);//输出p指针对应位置的值 为6
return 0;
}
注意:
如果在另一个.c文件得知一个变量的地址,然后将其赋值给上例中的int *p,将无法输出该变量的值
猜测是因为每一个函数都有属于自己的堆栈,其他函数无法根据地址访问该栈中的变量
#include <stdio.h>
int main(){
int i =6;
printf("&i=%p\n",&i);//输出0x62FE14
int *p =0x62FE14;
printf("*p=%d\n",*p);//输出p指针对应位置的值 为6
return 0;
}
注意:
如果在另一个.c文件得知一个变量的地址,然后将其赋值给上例中的int *p,将无法输出该变量的值
猜测是因为每一个函数都有属于自己的堆栈,其他函数无法根据地址访问该栈中的变量