私はこのランダムウォークシミュレーションをしばらく実行しており、XcodeからエラーEXC_BAD_ACCESS
が得られています。しかし、それはシミュレーションの大部分を印刷します。なぜこのアレイは十分に大きくないのですか?
何らかの理由でメモリが不足していると思われますが、その理由はわかりません。
私はそれを編集したので、エッジの100スペース内に入ることはありません(可変ステップをステップ-100に編集することによって)。これは動作しますが、何が起こっているのか知りたいです。
ご協力いただければ幸いです。
double** places;
places = (double**) malloc(steps*sizeof(double*));
for (int i = 0; i < steps; i++)places[i] = (double*) malloc(2*sizeof(double));
for (i = 0; i< steps/*, exit*/; i++) {
// Find the angle of movement
angle = getRand()*360;
// Take a step
xPos+= STEP*cos(angle);
yPos+= STEP*sin(angle);
//Write Step to array
places[i][1] = xPos;
places[i][2] = yPos;
//Write Step to File
fprintf(ff, "%d %lf %lf\n",i,xPos,yPos);
}
ありがとう!今私は馬鹿のように感じる。私はこれを知っていたが、私はそれを完全に混ぜた。 – Treesrule14
問題ありません。それは私たちの最高に起こります:) – tangrs