首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

这样安全吗,该如何解决

2012-02-29 
这样安全吗for(iMinIndex+1i MaxIndexi++){if(满足条件){returnfalse}}returntrue对这个函数来说,

这样安全吗
for   (i=MinIndex+1;i <=MaxIndex;i++)
{
if   (满足条件)
{
return   false;
}
}return   true;
  对这个函数来说,可能没循环结束,就return了。请问这样安全吗

[解决办法]
没有问题,只有一点,如果之前有用malloc申请内存,要用free释放掉。
[解决办法]
for (i=MinIndex+1;i <=MaxIndex;i++)
{
if (满足条件)
{
return false;
}
}return true;

这样的调用是安全的,应为你在程序当中要为程序的执行找出所有的出路,要每条路最后都能够安全返回,只是你在if的语句当中没有发生异常也就是跳过程序执行的话,它最终都能够找到return语句.
[解决办法]
应该没有什么问题.

for (i=MinIndex+1;i <=MaxIndex;i++)
{


assert(i <= MaxIndex); /*如果还担心不安全就加这个吧*/
if(i > MaxIndex)
{
printf( "i > MaxIndex! ");
exit(1);
}


if (满足条件)
{
return false;
}
}return true;


热点排行