#include<iostream>
using namespace std;
int main()
{
int **p;
int m,n;
cout << "请输入行数和列数:" << endl;
cin >> m >> n;
*p = new int[m];
for(int i = 0;i <= m-1;i++)
{
p[i]=new int[n];
}
for(int row = 0;row <= m-1;row++)
{
for(int col = 0; col <= n-1;col++)
{
p[row][col] = 0;
}
}
for(int row = 0;row <= m-1;row++)
{
for(int col = 0; col <= n-1;col++)
{
cout << p[row][col] << "\t";
}
cout << "\n";
}
system("pause");
return 0;
}
差点忘了发代码
我用指向指针的指针定义了二维数组。
1,但是刚运行到第一个FOR循环的时候就出问题了.
2,我改成手动的逐一申请(比如p[0]=NEW int[5],p[1]=new int[5]...)
然后就没问题了,但运行到最后还是有问题
3,如果我要DELETE释放,是不是要先释放*p然后逐一释放p[0~5]?