ive tried to debug the code however, it says that at sizes ptr[0][0][0][0][0][0] there is a segmentation fault and i cant seem to fix it, So this is just filler text i already told what i did and i dont know why there's a segmentation fault right at the start of the array. I am new to pointers and i have been stuck on this for a really long time
#include<iostream>
using namespace std;
void allocatememory(int******,int,int,int,int,int,int);
void fillArray(int******,int,int,int,int,int,int,int);
int main(){
int****** ptr;
allocatememory(ptr, 3,5,7,9,8,4);
fillArray(ptr, 3,5,7,9,8,4,20);
}
void fillArray(int****** ptr,int a,int b,int c,int d,int e,int f,int val){
int x=val;
for (int i = 0; i < a; i++)
{
for (int j = 0; j < b; j++)
{
for (int k = 0; k < c; k++)
{
for (int l = 0; l < d; l++)
{
for (int m = 0; m < e; m++)
{
for (int n = 0; n < f; n++)
{
ptr[i][j][k][l][m][n]=x;
x++;
}
}
}
}
}
}
}
void allocatememory(int****** ptr,int a,int b,int c,int d,int e,int f){ //6 DMA
ptr=new int*****[a];
for (int i = 0; i < a; i++)
{
ptr[i]=new int****[b];
for (int j = 0; j < b; j++)
{
ptr[i][j]=new int***[c];
for (int k = 0; k < c; k++)
{
ptr[i][j][k]=new int**[d];
for (int l = 0; l < d; l++)
{
ptr[i][j][k][l]=new int*[e];
for (int m = 0; m < e; m++)
{
ptr[i][j][k][l][m]=new int[f];
}
}
}
}
}
}