两种方法,祝你成功
1.new出来
//int *arr; //it can be any other type (char, float)
//arr = new int[n]; //n should be integer variable
#include
void main()
{
int **arr;
int N,M;
cin >> N >> M;
arr = new int*[N];
for(int i=0;i
arr[i] = new int[M];
}
for(i=0;i
for(int j=0;j
arr[i][j]=2;
cout<
cout<
cout<
}
2.malloc出来
#include
#include
void main ()
{
int n; //用 malloc 函数定义二维数组
scanf("%d",&n);
int **a;
a=(int **)malloc( n*sizeof(int *)); //定义第一列
for(int i=0;i
for (i=0;i
for(int j=0;j
a[i][j]=3;
printf("%d ",a[i][j]);//< }
printf("\n");//cout<
printf("\n");//cout<
}
这个写法不能实现二维数组,应该这样:
//---------------------------------------------------------------------------
#include
#include
#define M 10
#define N 10
int main()
{
int i;
int **a;
a=(int **)malloc(sizeof(int *)*M);
for (i = 0; i
}
return 0;
}
//---------------------------------------------------------------------------