Ho scritto questo codice. Fatemi sapere se va bene

codice:
 

double temp;

bool forward;

double *vect = (double*) malloc (dim_x * dim_y * frame * sizeof(double));
    
    for(k=0; k<dim_x; k++){   //Ciclo sulle colonne
    for(j=0; j<dim_y; j++){   //Ciclo sulle righe

    if (forward)
    {
    for(i=0; i<frame; i++){
    fread(&temp ,sizeof(double) , 1 ,pf);
    vect[(i* dim_x * dim_y) + (j * dim_x) + k] = temp;
 
    }
    }
    else
    {
    for(i=0; i<frame; i++){    
    fread(&temp ,sizeof(double) , 1 ,pf);
    vect[(i* dim_x * dim_y) + ((dim_y - 1 - j) * dim_x) + k] = temp;
    }
    }
    }
    forward = !forward;
    }