小编Job*_*Job的帖子

"EXC_BAD_ACCESS:无法恢复以前选择的帧"错误,数组大小?

我有一个算法来创建Eratosthenes的筛子并从中拉出素数.它允许您输入筛子的最大值,算法会为您提供低于该值的素数,并将它们存储在c样式数组中.

问题:一切正常,值高达500.000,但是当我输入一个较大的值 - 运行时 - 它在xcode中给出了以下错误信息:

Program received signal:  “EXC_BAD_ACCESS”.
warning: Unable to restore previously selected frame.
Data Formatters temporarily unavailable, will re-try after a 'continue'. (Not safe to call dlopen at this time.)
Run Code Online (Sandbox Code Playgroud)

我的第一个想法是我没有使用足够大的变量,但是当我使用'unsigned long long int'时,这应该不是问题.此外,调试器将我指向我的代码中的一个点,其中数组中的一个点被赋值.因此我想知道阵列有最大限制吗?如果是:我应该使用NSArray吗?如果不是,那么基于此信息导致此错误的原因是什么?

编辑:这是代码的样子(它不完整,因为它在发布的最后一行失败).我正在使用垃圾收集.

/*--------------------------SET UP--------------------------*/
    unsigned long long int upperLimit = 550000;             // 
    unsigned long long int sieve[upperLimit];
    unsigned long long int primes[upperLimit];
    unsigned long long int indexCEX;
    unsigned long long int primesCounter = 0;

// Fill sieve with 2 to upperLimit
for(unsigned long …
Run Code Online (Sandbox Code Playgroud)

c arrays xcode exception objective-c

5
推荐指数
1
解决办法
5301
查看次数

标签 统计

arrays ×1

c ×1

exception ×1

objective-c ×1

xcode ×1