帮忙解答
#include<iostream>
using namespace std;
int main()
{
int **x,*y,z=10;
y=&z;x=&y;
cout<<**x+1<<endl;
return 0;
}
可以解释一下吗,还有**X是什么意思
Int *y,是设一个指针,int **x. 是指设一个指向指针的指针,指针是保存地址的,意思是指针y保存了z的地址,指针x保存了指针y的地址。后面的输出我不造,我也刚学。 我造了。输出流那里的**x+1,这么看(*(*x))+1,这里的*号是取用的意思,我是理解为取用指针所指向的地址的内容,所以第一次*号(*x),表示获得了指针x指向的地址(也就是指针Y,指针本身就是地址)所保存的内容,也就是变量Z的地址,在第二次*也就是取用了Y指向的地址(变量Z的地址)的内容,所以**x==10,再加一 ,就是十一。 奥古斯丁少爷 发表于 2016-3-9 16:39
Int *y,是设一个指针,int **x. 是指设一个指向指针的指针,指针是保存地址的,意思是指针y保存了z的地址, ...
好的。我再看看 奥古斯丁少爷 发表于 2016-3-9 18:28
我造了。输出流那里的**x+1,这么看(*(*x))+1,这里的*号是取用的意思,我是理解为取用指针所指向的地址的 ...
明白了谢谢
页:
[1]