今天在调试自己写的一个图像处理的程序时发现一个循环语句使用时不易发现的一个错误,平时对细节的不注意,搞了我一整天,留着以后参考。
部分代码如下:
unsigned int i,j;
for(i=starty+1;i<endy-1;i++)
{
for(j=startx+1;j<endx-1;j++)
{....
}
}
看出错误来了吗?取endy=0,或endx=0试试,程序不知道要运行多久了吧。
问题出在计数变量i的定义上,去掉unsigned 问题得解。