int m = 5, n = 6;
int *p,*q,**r;
p = &n, q = &n;
r = &p;
cout<<m<<n<<*p<<*q<<**r; \\Gives output 56666
*r = &m;
cout<<m<<n<<*p<<*q<<**r; \\Gives output 56665
输出不应为56565,因为当您给* r =&m时,p获得m的地址,而* p应该打印m(5)的值?
答案 0 :(得分:2)
输出不应为56565,因为当您给* r =&m时,p获得m的地址,而* p应该打印m(5)的值?
是的,应该;你的推理是正确的。此外,output is 56565应该是正确的。
答案 1 :(得分:0)
这是指针的工作方式。
如果r=&p
并且您设置了*r=&m
,则它与p=&m
完全相同。