长知识了,,,
二维数组p[m][n]可以理解为m行n列,在作为参数的时候,必须指定每行有多少个数据,就是指定n值,在子函数中使用p[1][0],系统就会从入参开始往后偏移1*n个数之后作为p[1][0]的地址。
修改后的代码如下:
#include
void add_one(int p[][2])
{
for(int i=0;i<2;i++)
for(int j=0;j<2;j++)
p[i][j]+=1;
}
int main()
{
int a[2][2]={{0,0},
{0,0}};
add_one(a);
for(int i=0;i<2;i++)
{for(int j=0;j<2;j++)
printf("%d ",a[i][j]);
printf("\n");}
return 0;
}