huangkang66
huangkang66
采纳率25%
2016-03-24 07:20 阅读 1.6k

请问这段程序,有什么问题,运行错误提示corruption of the heap,边界也没有溢出呀

BOOL CImgProcess::HoughCir(int *a0,int *b0,int *r0)
{

int hei=GetHeight(),wid=GetWidthPixel();
int i=0,j=0,a=0,b=0,r=0,r1=0,t=0,bt=0;
int Add[60][60][60];
memset(Add,0,sizeof(int)*216000);
for(i=0;i<60;i++){
    for(j=0;j<60;j++){
        for(a=0;a<60;a++){
            Add[i][j][a]=0;

        }
    }
}

for(a=210;a<270;a++){
    for(b=290;b<350;b++){
        for(i=0;i<hei;i++){
            for(j=0;j<wid;j++){ 
                bt=GetGray(j,i);

                if(bt==255){

                    r1=(i-a)*(i-a)+(j-b)*(j-b);
                    r=sqrt((double)r1);
                    if(r>160&&r<220){
                        Add[a-210][b-290][r-160]++;

                    }

                }

            }
        }
    }
}


for(a=210;a<270;a++){
    for(b=290;b<350;b++){
        for(r=160;r<220;r++){
            if(Add[a-210][b-290][r-160]>t){
                t=Add[a-210][b-290][r-160];
                *a0=a;
                *b0=b;
                *r0=r;

            }
        }
    }
}
delete []Add;






return TRUE;

}

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

2条回答 默认 最新

  • caozhy 从今以后生命中的每一秒都属于我爱的人 2016-03-24 08:18

    Add[a-210][b-290][r-160]++;
    看下这一行是不是下标越界了。

    点赞 评论 复制链接分享
  • supaipai supaipai 2016-03-24 08:53

    [r-160]这里吧

    点赞 评论 复制链接分享

相关推荐