四月归还 2017-11-29 08:29 采纳率: 66.7%
浏览 804
已采纳

指针数组和数组指针问题麻烦大佬们解答一下

int a [3]={1,2,3}
int* b [3]={a,a+1,a+2}
int *(*c)[3]=&b
中为什么&b是一个二级指针而不是三级指针
因为&b指向b而b又指向b[0],b[0]是一个指针
然而&b是二级指针这是为什么

  • 写回答

1条回答 默认 最新

  • mandagod 2017-11-29 09:17
    关注

    b的类型是int*,所以&b就是 int**。
    b的指向是b[0]的地址,也就是&(b[0]).

    可以typedef ElePtr int*; 只看ElePtr就是什么类型就可以了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?