猿问

c语言的指针问题

int n=12345;
int *ptr;
ptr=&n;
printf("%d \n",*ptr);
我知道*是获取数值的。明明ptr只指向n的内存地址,为什么*ptr会获取到n的数值?

桃花细逐杨花落
浏览 1263回答 2
2回答

__innocence

ptr只指向n的内存地址,*ptr会获取到n的数值,你都把答案说出来了。ptr是n的地址,*ptr就是这个地址的值。简单来说,* 和 &可以互相抵消ptr=&n;左右同时加上*:*ptr = *&n也就是:*ptr = n
随时随地看视频慕课网APP
我要回答