I'm trying to create a variable size 3D VLA, I've seen the algorithm for writing a variable 2D arrays and tried to do it for 3D and facing the error segmentation fault and core dumped here is the code I wrote:
#include <iostream>
using namespace std;
int main (){
double ***array;
int columns,rows,d3;
cin>>columns>>rows>>d3;
array = new double **[d3];
for (int i=0;i<d3;i++){
array[i] = new double *[rows];
}
for (int i=0;i<d3;i++){
for (int j=0;j<rows;j++){
array[i][j] = new double [columns];
}
}
for (int i=0;i<d3;i++){
for (int j=0;j<rows;j++){
delete [] array[i][j];
}
}
for (int i=0;i<d3;i++){
delete [] array[i];
}
delete[]array;
int p=0;
for (int k=0;k<d3;k++){
for (int i=0; i<rows;i++){
for (int j=0; j<columns; j++){
array [k][i][j] = 0;
p =p+1;
}
}
}
cout<<p;
}