gpt4 book ai didi

ios - SIGSEGV 错误发生在实际设备上但在 ios 模拟器上没有

转载 作者:行者123 更新时间:2023-12-01 16:10:52 25 4
gpt4 key购买 nike

我是一个名为 CountdownCenter 的 cydia 插件的开发者。我试图为我的小部件创建一个数字时钟外观,因此我创建了一个可以完美完成此操作的示例应用程序。完成此操作后,我将此数据传输到我的调整代码中,但这会导致我的 iPhone 上出现 SIGSEGV 崩溃。经过一些测试,我找到了导致崩溃的部分,但我只是找不到问题所在,因为这部分可以在正常的应用程序上工作。你能帮我一下吗?

这是代码:

int digitarray[10];
int c = 0;
digitarray[0] = 0;
digitarray[1] = 0;
while (secon>0) {
int digitt = secon % 10;
digitarray[c] = digitt;
secon /= 10;
c++;
}
lbl.text = [NSString stringWithFormat:@"%d", digitarray[0]];
[self selectimage:digitarray[0] img:numview10];

最佳答案

SIGSEGV 通常意味着您正在尝试访问内存,但您不被允许访问。 (顺便说一句,您是否使用发布版本对此进行测试?)也许是这样。这里(还有其他一些类似的地方):

c = 0;
while (secon>0) {
int digitt = secon % 10;
digitarray[c] = digitt;
secon /= 10;
c++;
}

有一些可能性:

  • secon (顺便说一句,可怕的变量名...)是一个 floatdouble,在这种情况下 while 循环 要么从未进入,要么从未离开
  • c 变得太大,超出了 digitarray 的范围

为了解决这个问题,我建议在代码开头设置一个断点并逐步检查。

关于ios - SIGSEGV 错误发生在实际设备上但在 ios 模拟器上没有,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16045826/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com