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

如题所述

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

cin >> M >> N; //输入两个维度
A = new int *[M]; //开辟指针数组
for(i=0; i<M; i++)
A[i] = new int[N];
这样以后使用A[i][j]就像二维数组一样
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-08-11
int m,n;
int *p;
new *p=int[m][n];
通过以上方法,即动态开辟存储空间,把开辟的数组的地址赋给指针变量p,通过指针变量p调用它,数组的大小有输入者确定,即由输入者输入的m、n的数值决定。
相似回答