我的应用程序崩溃并出现EXC_ARITHMETIC错误,我不知道为什么。这是错误发生的地方:
int main(int argc, char *argv[]) {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
int retVal = UIApplicationMain(argc, argv, nil, nil); //ERROR IS HERE
[pool release];
return retVal;
}
当我点击应用程序中的某个按钮时会发生错误,它会挂在我的ViewController.m文件中,如下所示:
- (IBAction)btnPressed:(UIButton *)sender {
[self btnPressed];
}
从同一个文件调用此代码:
- (void)btnPressed {
NSString *strInfo = [[NSString alloc] initWithString:@"Test Info. \r\n"];
NSData *dataInfo = [strInfo dataUsingEncoding:NSUTF8StringEncoding];
[strInfo release];
[socket writeData:dataInfo withTimeout:-1 tag:1];
}
当应用程序加载时,也会调用btnPressed并且它不会产生错误。如果我向[self btnPressed];
行添加一个断点,那么当我单击应用程序中的按钮时,它会起作用,在断点处停止,当我单击“继续执行程序”时,它也可以正常工作。
注意:我正在使用CocoaAsyncSocket与Cocoa应用程序进行通信。
答案 0 :(得分:0)
这似乎只是iOS 5 sim的一个问题,在iOS 4.3中运行良好。