Jam*_*man 6 c exception-handling exception objective-c
我一直在阅读关于Apple开发人员文档的异常处理,但我想知道为什么标准C操作的异常没有被捕获?
例如,下面的代码仍然会崩溃应用程序,而不会将div捕获为零.请问@ try/@ catch块只捕获Obj-C代码吗?
@try {
int i = 10 / 0;
}
@catch (NSException * e) {
NSLog(@"Div by zero!");
}
@finally {
// Nothing...
}
Run Code Online (Sandbox Code Playgroud)
除以零并不是 type 的例外NSException
。事实上,就编程语言而言,它也并不是真正的“例外”。C 本身没有任何异常,就像 C++、Java 等一样。当 C 中发生除数 0 时,处理器会“抛出”“异常”,并且对该错误的处理发生在更低的级别。
归档时间: |
|
查看次数: |
399 次 |
最近记录: |