1.我遇到了什么样的问题,在二维数组作为实参传值的时候会出现调用出错的问题
2.我是怎么解决的:
#include <stdio.h>
int main(){
int a[10][10];
int (*p)[10][10]=&a;
printf("%d \n",p);
printf("%d \n",*p);
for(int i=0;i<10;i++)
for(int j=0;j<10;j++)
a[i][j]=j;
for(int i=0;i<10;i++)
for(int j =0;j<10;j++)
{
printf("%d ",a[i][j]);
printf("%d ",*(*a+10*i+j));//equals a[i][j]
printf("%d ",*((*(a+i))+j));//???which is right
printf("%d \n",*((*p)[i]+j));
}
int b=4;
int *c=&b;
printf("%d",*c);
delete [] p;
}
3.对上述的指针p我是这么理解的: