Malloc a 3-Dimensional array in C?

后端 未结 13 912
余生分开走
余生分开走 2020-11-28 07:56

I\'m translating some MATLAB code into C and the script I\'m converting makes heavy use of 3D arrays with 10*100*300 complex entries. The size of the array also depends on t

13条回答
  •  萌比男神i
    2020-11-28 08:14

    #include
    #include
    
    #define MAXX 3
    #define MAXY 4
    #define MAXZ 5
    
    main()
    {
    int ***p,i,j;
    p=(int ***) malloc(MAXX * sizeof(int **));
    
    for(i=0;i < MAXX;i++)
    {
    p[i]=(int **)malloc(MAXY * sizeof(int *));
    for(j=0;j < MAXY;j++)
    p[i][j]=(int *)malloc(MAXZ * sizeof(int));
    }
    
    for(k=0;k < MAXZ;k++)
    for(i=0;i < MAXX;i++)
    for(j=0;j < MAXY;j++)
    p[i][j][k]= < something >;
    
    }
    

提交回复
热议问题