打印本文 打印本文  关闭窗口 关闭窗口  
C++每日一问:如何创建二维数组?
作者:佚名  文章来源:不详  点击数  更新时间:2008/4/18 14:39:53  文章录入:杜斌  责任编辑:杜斌

Q:如何创建二维数组?                                                                                                   
A:方法1
  TYPE * * arrayName;
  arrayName = new TYPE * [SIZE_1];
  for ( i=0 ; i<SIZE_1 ; i++ )
  {
      arrayName[i] = new TYPE[SIZE_2];
  }
  使用完毕后不要忘记释放内存:
  for ( i=0 ; i<SIZE_1 ; i++ )                                                                                         
  {
      if ( arrayName[i]!=NULL ) delete [] arrayName[i];
  }
  if ( arrayName!=NULL ) delete [] arrayName;
  备注:在使用这种方法创建的数组时,如果需要把数组传递给函数的时候,
        可以传递TYPE **的指针,但是如果使用TYPE arrayName[][]创建数组
        无论几维数组都是TYPE * 的指针,如果试图传递TYPE **的指针,会报告错误
  方法2(推荐)
  参见kirbyzhou《关于动态数组》一文
打印本文 打印本文  关闭窗口 关闭窗口