黑马程序员技术交流社区
标题: 当程序运行出错的时候的异常处理 [打印本页]
作者: 夜神月No1 时间: 2015-11-23 13:16
标题: 当程序运行出错的时候的异常处理
/*
异常 处理崩溃问题的一种机制。抛出一场以后被
系统捕获到异常信息,然后有对应的处理方案,处理
完毕以后系统继续运行。
在写大型程序或要求较高的程序时经常使用。
*/
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[])
{
@autoreleasepool {
//我们都是使用分数时 分母不能为 0 .
NSException *exception = [[NSException alloc] initWithName:@"分母为零异常" reason:@"分母当前的值为0,造成分母没有意义" userInfo:nil];
//分数
double a = 1;//分子
double b = 1;//分母
double c = a/b;//C表示分数的值
//动态输入一个B的值
printf("请输入一个分母的值!\n");
scanf("%lf",&b);
@try {
if(b == 0)
{
//分母为零 时抛出异常
@throw exception;
}
}
@catch (NSException *exception) {
//捕获到分母为零的异常时 对应的处理
// 当b==0,分数没有意义
b = 1;
NSLog(@"捕获到异常,并成功解决。");
NSLog(@"写入日志 2014-11-27 14:18:47");
}
@finally {
//不管有没有捕获的异常都要执行的内容
NSLog(@"写入系统日志");
NSLog(@"分数的值:%.2lf",c = a/b);
}
}
return 0;
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |