[转]c++使用new来申请二维数组

来源:互联网 发布:js offsetwidth取不到 编辑:程序博客网 时间:2024/06/15 19:26

用new delete 来申请动态二维数组空间, 网上也找不到简洁的代码, 于是自己写出如下:

以二维int型数组为例——

cin>>m>>n;  //m,n分别为行数和列数

int ** p;
p = new int*[m]; 
for( int i = 0; i < m; i++ )
  p[i] = new int[n];

然后就可以如二维数组给p[i][j]赋值了.

代码解释: 

以一个指针的指针指向一个指针数组, 然后给指针数组里的每个指针申请一维空间.

最后别忘了释放:

for( int i = 0; i < m; i++ )
  delete[]p[i];
delete[]p;