可能重复:
C 中的最大数组大小
我的问题是: Code::blocks 是否有循环的最大迭代次数?
我正在运行蒙特卡罗,我想通过 for 循环运行一百万个粒子。但它似乎没有崩溃的最大值是 110000。
谢谢!
更多信息:
我正在使用按时间播种的随机数生成器:
srand(time(NULL));
然后我想创建一百万个粒子(随机)
for(k=0; k<M; k++){
R[k] = rand()*(1)/(double)RAND_MAX;
z[k] = -log(1 - R[k])/(1000*U);
其中M = Num / 10(我想#define N 1000000)
这是我唯一能想到的就是制造问题?
这是一个不起作用的示例代码。
#include <stdio.h>
#include <math.h>
#include <time.h>
#include <stdlib.h>
int main(){
srand(time(NULL));
int j=0;
int i;
double A[1000000];
for(i=0;i<1000000;i++){
A[i] = rand()*(1.0)/(double)RAND_MAX;
if (A[i] == 1.0){
printf("Wow!\n");
}
}
return 0;
}
这可能是由于我的 Code::blocks 设置造成的吗?