Мне нужно создать 2-мерную матрицу, и в каждую ячейку я должен поместить массив, длина которого вычисляется в функции, когда я пытаюсь выполнить следующий код, он разбивается с ошибкой Segmentation fault (core dumped)
.На мой взгляд, матрица имеет N_Sweep строк, N столбцов и последнее измерение вычисляется в функции.
double ***gamma;
gamma = malloc(N_Sweep*sizeof(double**));
for(i=0;i<N_Sweep;i++){
gamma[i] = malloc(N_Sweep*N*sizeof(double*));
}
// ...
for(t=0;t<N;t++){
for(i = 0; i<N_Sweep; i++){
for(t_M = 1; t_M<(N_Sweep - i); t_M++){
gamma[i][t] = malloc(sizeof(double) * (N_Sweep-i));
gamma[i][t][t_M] = 3.0;
}
}
}
прототип функции: void gamma_computation(double ***gamma);