怎样用c++声明一个二维数组是未知大小的,比如说是一个矩阵的大小,大小由输入者确定,该怎么声明呢

2024-11-22 20:13:49
推荐回答(2个)
回答1:

c/c++无法声明一个不定大小的二维数组,不过可以用二级指针来模拟(我想你清楚数组和指针的区别吧)
int **A; //声明二级指针A,指向一个指针数组(切记不是指向一个二维数组)

cin >> M >> N; //输入两个维度
A = new int *[M]; //开辟指针数组
for(i=0; i A[i] = new int[N];
这样以后使用A[i][j]就像二维数组一样

回答2:

int m,n;
int *p;
new *p=int[m][n];
通过以上方法,即动态开辟存储空间,把开辟的数组的地址赋给指针变量p,通过指针变量p调用它,数组的大小有输入者确定,即由输入者输入的m、n的数值决定。