[求助]二维指针数组的问题
想用一个二维指针数组b把 二维数组 int a[AM][AN] 的上下、左右粘起来,形成一个闭合的轮胎形面,
代码如下:
int a[AM][AN];
int *b[AM+2][AN+2];
for(int i=0;i<AM;i++)
for(int j=0;j<AN;j++)
{
a[i][j]=1;
b[i+1][j+1] =&(a[i][j]); //*
if(i==0)b[AM+1][j]=&(a[0][j]);
if(j==0)b[i][AN+1]=&(a[i][0]);
if(i==AM)b[0][j]=&(a[AM][j]);
if(j==AN)b[i][0]=&(a[i][AN]);
}
b[0][0]=&(a[AM][AN]);
b[0][AN+1]=&(a[AM][0]);
b[AM+1][0]=&(a[0][AN]);
b[AM+1][AN+1]=&(a[0][0]);
调试的时候发现*处给b[i][j]赋的值都是a[i][j]的值而不是a[i][j]的地址,这是什么原因?
[解决办法]
int *b[AM+2][AN+2]; 是个指针二维数组。
[解决办法]
你眼花了 仔细看看