c/c++中申请二维数组的方式
测试代码如下:
#include <cstdio>
/*二级指针**作为形参,可以接受二级指针**p、指针数组*p[]作为实参的参数,从而传递二维数组*/
void print(int **p, int row, int col)
{
int i=0,j=0;
for(i=0;i<row;i++)
{
for(j=0;j<col;j++)
{
printf("%d\t",p[i][j]);
}
}
printf("\n");
}
/*数组指针(*)[]作为形参,可以接受数组指针(*p)[3]作为实参的参数,从而传递二维数组*/
void print(int (*p)[3], int row, int col)
{
int i=0,j=0;
for(i=0;i<row;i++)
{
for(j=0;j<3;j++)
{
printf("%d\t",p[i][j]);
}
}
printf("\n");
}
/************************************************************************/
/* 以下是动态申请二维数组的几种方法
int ** Ptr <==> int Ptr[ x ][ y ]; 行列不固定
int *Ptr[ 5 ] <==> int Ptr[ 5 ][ x ]; 行数固定
int ( *Ptr )[ 5 ] <==> int Ptr[ x ][ 5 ]; 列数固定
这里 x 和 y 是表示若干的意思。 */
/***********