若有以下语句:int **pp,*p,a=10,b=20;pp=&p;p=&a;P=&b;
printf("%dn",*p,**pp);则输出结果是
A
10,20
B
10,10
C
20,10
D
20,20
正确答案
正确答案:D
详细解析
首先,`pp=&p`表示`pp`指向`p`;接着`p=&a`表示`p`指向`a`,但随后`p=&b`改变了`p`的指向,使其指向`b`。因此,`*p`就是`b`的值即20,而`**pp`通过`pp`找到`p`,再通过`p`找到`b`,也是20。记忆小技巧:"指针接力最终点,P改向后全变B"。
所属课程:C语言程序设计
考试类型:成人自考