动态创建数组

一般的可以用malloc或new   :  
  一维数组  
                            int   arr1[100];  
  可以这样实现  
                            int   n   =   100;  
                            int   *arr1   =   (int*)malloc(sizeof(int)   *   n);  
  二维数组  
                            int   arr2[50][100]  
  可以这样实现  
                            int   m   =   50;  
          int   (*arr2)[100]   =   (int   (*)[100])malloc(sizeof(int[100])*m);  
  或者                            
          typedef   int   INT_ARR[100];  
                            int   m   =   50;  
          INT_ARR   *arr2   =   (INT_ARR   *)malloc(sizeof(INT_ARR)*m);  
   
  使用跟真正的数组一样,如  
   
  for(int   i=0;i<10;i++)  
  for(int   j=0;j<100;j++)  
  arr2[i][j]   =   i*100   +   j;   
   

 

1D:  
  int   *arr;//可以是其他类型  
  arr=new   int[n];  
  2D:  
  int   **arr;    
  int   N,M;    
  cin   >>   N   >>   M;    
   
  arr   =   new   int*[N];    
  for(int   i=0;i<N;i++)   {   arr[i]   =   new   int[M];   }  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值