若有如下定义和语句,则输出结果是()
int *p,*pp ,a=10,b=20;
pp=&p ; p=&a;p=&b;
printf(”%d,%d\n”,*p,*pp);
A、
10,20
B、
10,10
C、
20,10
D、
20,20
【正确答案】:D
【题目解析】:
指针p最终指向的是b的地址,所以 *p输出的是b的值,**pp是指针的指针 pp=&p 干的事情是将p的地址指向pp,此时*pp 相当于p 所以 **pp 可以看成是*(*pp) 即* p所以输出的是b的值
若有如下定义和语句,则输出结果是()
int *p,*pp ,a=10,b=20;
pp=&p ; p=&a;p=&b;
printf(”%d,%d\n”,*p,*pp);
10,20
10,10
20,10
20,20
指针p最终指向的是b的地址,所以 *p输出的是b的值,**pp是指针的指针 pp=&p 干的事情是将p的地址指向pp,此时*pp 相当于p 所以 **pp 可以看成是*(*pp) 即* p所以输出的是b的值