请教溢出检测
有一个C++函数(不是VC),里面有很多算法,运行时有可能出现溢出(如分母为零,求绝对值大于1的反三角函数asin等)的情况,我希望溢出时能给出提示,我试过try-catch(…),但好象不好用,谁能帮我解决这个问题?能做个试验吗?谢谢!
例如:
function(double a,double b,double c,)
{
try
{
…
…
c=a/b; //b可能为零
…
...
}
catch(…)
{
…
…
}
}
有一个C++函数(不是VC),里面有很多算法,运行时有可能出现溢出(如分母为零,求绝对值大于1的反三角函数asin等)的情况,我希望溢出时能给出提示,我试过try-catch(…),但好象不好用,谁能帮我解决这个问题?能做个试验吗?谢谢!
例如:
function(double a,double b,double c,)
{
try
{
…
…
c=a/b; //b可能为零
…
...
}
catch(…)
{
…
…
}
}
2006-05-28 10:18
2006-05-28 12:29
2006-05-28 16:44
确实如楼上所说的,如果变量类型为double时,异常是捕获不到的,只有变量类型为整数,异常可以捕获的.
哪位老大可以详细解释一下为什么? 我也不懂为什么会这样?
2006-05-29 13:54
2006-05-29 14:29
double a,double b,double c;
c=a/b;
那是不是只有除之前自己进行判断b是否等于零,否则就没有其它办法?
2006-05-29 15:15
这是软件的可靠性问题,我认为C++已经很成熟了,应该有相应的解决办法,只是我现在不知道.哪位高手如果知道不妨赐教.能把解决的方法发上来吗?谢谢!
2006-05-29 20:22

2006-05-30 10:45
2006-05-30 20:59