//用new创建一个二维数组,有两种方法,是等价的

 //用new创建一个二维数组,有两种方法,是等价的  
  一:  
  int   (*p)[10]   =   new   int[5][10];  
  二:  
  int   **p   =   new *  int[5];  
  for(int   i=0;i<5;i++)  
          p[i]   =   new   int[10];  
   
  //指针数组的创建,也有两种方法  
  一:  
  char   *pa   =   new   char[4];  
  for   (int   i=0;i<4;i++)  
  {  
          pa[i]   =   new   char[8];   //为每个指针都分配8个char元素空间。  
  }  
  二:  
  char   *pa[4];//可以不用new创建  
  for   (int   i=0;i<4;i++)  
  {  
          pa[i]   =   new   char[8];   //为每个指针都分配8个char元素空间。  
  }  
   
   
  //delete二维数组  
  for(int   i=0;   i<5;   ++i)  
          delete   []   p[i];  
  delete   []p;  
   
  //delete指针数组  
  一:  
  for(int   i=0;   i<4;   ++i)  
          delete   []   pa[i];  
  delete   []pa;  
  二:  
  for(int   i=0;   i<4;   ++i)  
          delete   []   pa[i];
         
         
          现在已经全部修改通过了的  
   
  #include   <iostream>  
  using   namespace   std;  
   
  void   main()  
  {  
  //用new创建一个二维数组,有两种方法,是等价的  
  //一:  
  int   (*p)[10]   =   new   int[5][10];  
  //二:  
  int   **p   =   new   int*   [5];  
  for(int   i=0;i<5;i++)  
  p[i]   =   new   int[10];  
   
  //指针数组的创建,也有两种方法  
  //一:  
  char   **pa   =   new   char*   [4];  
  for   (int   i=0;i<4;i++)  
  {  
  pa[i]   =   new   char[8];   //为每个指针都分配8个char元素空间。  
  }  
  //二:  
  char   *pa[4];//可以不用new创建  
  for   (int   i=0;i<4;i++)  
  {  
  pa[i]   =   new   char[8];   //为每个指针都分配8个char元素空间。  
  }  
   
   
  //delete二维数组  
  //for一:  
  delete   []p;  
  //for二:  
  for(int   i=0;   i<5;   ++i)  
  delete   []p[i];  
  delete   []p;  
   
  //delete指针数组  
  //for一:  
  for(int   i=0;   i<4;   ++i)  
  delete   []pa[i];  
  delete   []pa;  
  //for二:  
  for(int   i=0;   i<4;   ++i)  
  delete   []pa[i];  
  }

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值