当前位置: 代码迷 >> Iphone >> Object-C中除数为0的错误捕获
  详细解决方案

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

热度:12   发布时间:2016-04-25 06:23:48.0
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类型。
------解决方案--------------------

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