bool ***p;
p=(bool***)malloc((mn+1)*sizeof(bool**));//第一维
for(i=0; i<=mn; i++)
{
p[i]=(bool**)malloc((mn+1)*sizeof(bool*)); //第二维
for(j=0;j<=n;j++)
{
p[i][j]=(bool*)malloc((n+1)*sizeof(bool)); //第三维
}
} 前面几个数组元素成功获得内存空间,比如p[0][2][1],在i,j大于7后就是非法的了(mn=66,n=6),求大神帮忙看一下,程序绝对没有问题,就是上面的代码有问题,如果换成 bool p[67][67][7];程序就没有问题。
p=(bool***)malloc((mn+1)*sizeof(bool**));//第一维
for(i=0; i<=mn; i++)
{
p[i]=(bool**)malloc((mn+1)*sizeof(bool*)); //第二维
for(j=0;j<=n;j++)
{
p[i][j]=(bool*)malloc((n+1)*sizeof(bool)); //第三维
}
} 前面几个数组元素成功获得内存空间,比如p[0][2][1],在i,j大于7后就是非法的了(mn=66,n=6),求大神帮忙看一下,程序绝对没有问题,就是上面的代码有问题,如果换成 bool p[67][67][7];程序就没有问题。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货