C++中用指向二维数组的指针作函数参数

举例说明:

函数声明:void Fun(int (*p)[4] );

  void Fun(int (*p)[4] )

  {
     int i=0,j=0;
     for(i=0;i<4;i++)
        for(j=0;j<4;j++)
             cout << *(*(p+i)+j) << endl;
    }

p是指向a[0]的指针,那么p+i就是指向a[i]的指针,*(p+i)就是指向a[i][0]的指针,

那么*(p+i)+j就是指向a[i][j]的指针,所以*(*(p+i)+j)就是a[i][j]的值。

在main()函数中调用:

int main()

{

  int a[3][4];

  Fun(a);

}

posted @ 2014-11-18 00:07  ht-beyond  阅读(852)  评论(0编辑  收藏  举报