0
点赞
收藏
分享

微信扫一扫

VC中动态申请二维数组

VC中动态申请double data[100][8000],dataInterp[300][8000]
方法一:
double **data,**dataInterp;
申请分配
data = (double **)malloc(sizeof(double)*100);
dataInterp = (double **)malloc(sizeof(double)*300);
for(p = 0;p<100;p++)
data[p] = (double *)malloc(sizeof(double)*8000);

for(p = 0;p<300;p++)
dataInterp[p] = (double *)malloc(sizeof(double)*8000);
释放
for(p = 0;p<100;p++)
free(data[p]);
for(p = 0;p<300;p++)
free(dataInterp[p]);
free(data);
free(dataInterp);
方法二:
#include <stdio.h>
 #include <stdlib.h>
 void main()
 {
      int nrows,ncolumns;
      int **Array;
      int i,j;
      printf("please input nrows&ncolumns:/n");
      scanf("%d%d",&nrows,&ncolumns);
      Array=(int **)malloc(nrows*sizeof(int *));
      for(i=0;i<ncolumns;i++)
          Array[i]=(int *)malloc(sizeof(*Array));
      for(i=0;i<nrows;i++)
      {
          for(j=0;j<ncolumns;j++)
          {
              Array[i][j]=1;
              printf("%d ",Array[i][j]);   //动态数组的成员都可以用正常的数组下标 arrayx[i][j]
          }
          printf("/n");
      }
      free(Array);
 }

举报

相关推荐

0 条评论