读书人

Object-C中除数为0的错误捕获

发布时间: 2012-09-06 10:37:01 作者: rapoo

Object-C中除数为0的异常捕获
代码如下:

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[])
{

@autoreleasepool {

@try
{
int x = 1, y = 0;
double c = (double)x / y;
NSLog(@"c = %f",c);
}
@catch (NSException * e)
{
NSLog(@"\nCaught %@ %@",[e name],[e reason]);
}
@finally
{
NSLog(@"Finally OK!!");
}

}
return 0;
}

程序运行结果:
2012-07-19 19:22:13.537 002[2193:4503] c = inf
2012-07-19 19:22:13.540 002[2193:4503] Finally OK!!

除数为0,为什么程序没有跳到catch中,捕获异常呢?而是正常运行了。。。

[解决办法]
是double类型。
[解决办法]

尽量不要用异常的方式来处理正常的数据正确性判断。。。。。。

读书人网 >Iphone

热点推荐