下列程序的输出结果是( )。 main() { int array[5]={2,4,6,8,10},*p,**PP; p=array; pp=&p; printf("%d",*(p++)); p

admin2020-11-23  11

问题 下列程序的输出结果是(    )。
    main()
    {  int array[5]={2,4,6,8,10},*p,**PP;
       p=array;
    pp=&p;
    printf("%d",*(p++));
    printf("%d",**pp);
  }

选项 A、22
B、 2 4
C、  4 4
D、 4 6

答案B

解析 本题中指针p指向一维数组a的一级指针,指针pp是指向一级指针p的二级指针,p中存放的是数组array的首地址,所以在第一个printf()中,*(p++)表示先取p的值,然后加1,这时p中存放的是array[1]的值,pp中存放的是p的地址,**pp表示取p所指的对象的值,即array[1]的值。
转载请注明原文地址:https://kaotiyun.com/show/J03p777K
0

相关试题推荐
最新回复(0)