我的iPhone应用程序有问题,我试图连接到我的PHP脚本以获取有关某些信息。

我有这段代码,它从PHP Link(总表)中获取响应,并将其放入responseRandomID中。

但是,当我尝试在随机函数中使用它时,在尝试运行它时出现错误?

connectionDidReciveData:

if(connection == connectionRandomID) {
        NSString *temp = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
        responseRandomID = [temp intValue];
    }


connectionDidFinishLoading:

if(connection == connectionRandomID) {
        randomid = (int)1 + arc4random() % (1-responseRandomID+1);
    }


编辑:这仅在数据库中只有1行时发生?但是当我有2个它崩溃了吗?

最佳答案

randomid = (int)1 + arc4random() % (1-responseRandomID+1);


如果responseRandomId == 2可以导致/乘以0

如果是硬编码的2%0-编译器将其捕获

如果通过变量给出(如您的情况):

Exception Type:  EXC_ARITHMETIC (SIGFPE)
Exception Codes: EXC_I386_DIV (divide by zero)

10-08 05:30