0
i = 0 및 j = 2 인 경우 Segmentation Fault를 얻습니다. 하지만 그 이유는 모르겠다!void 함수에 의한 3d 배열 할당
도와 주시겠습니까? 내 함수의
:
void allocationdynamiquetableautroisdimdentier(int**** Matrice,int nbniveau, int nbligne, int nbcolonne)
{
int i,j;
*Matrice=(int***) malloc (sizeof(int**)*nbniveau);
for (i=0; i<nbniveau; i++)
{
(*(Matrice))[i]=(int**) malloc (sizeof(int*)*nbligne); // allocation dynamique de la matrice Matrice
for (j=0; j<nbligne; i++)
{
((*(Matrice))[i])[j]=(int*) malloc (sizeof(int)*nbcolonne);
}
}
}
정말, 트리플 포인터이어야한다 ???? 오 이런 왜? –
@TonyTheLion이 다시 읽습니다. 별표가 4 개 있습니다. –
분명히 이것을 구현하는 더 효율적인 방법이 있으며 너무 많은 불필요한 괄호가 있지만 malloc이 NULL을 반환하지 않으면 왜 잘못 될지 알 수 없습니다. – ams