0
当i = 0且j = 2时,我获得了分割错误; 但我不知道为什么!由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);
}
}
}
三重指针,真的????哦,上帝为什么? – 2012-07-23 16:09:29
@TonyTheLion再次阅读。有4个星号。 – 2012-07-23 16:10:48
确实有更高效的方法来实现这一点,并且有太多不必要的括号,但我不明白为什么它会出错,除非malloc返回NULL。 – ams 2012-07-23 16:12:17