У меня есть цикл for в моем коде Objective-C, который постоянно выдает ошибку EXC_BAD_ACCESS
. Вот код:
double (*X)[2];
for (int bufferCount=0; bufferCount < audioBufferList.mNumberBuffers; bufferCount++) {
SInt16* samples = (SInt16 *)audioBufferList.mBuffers[bufferCount].mData;
for (int i=0; i < 1024; i+=2){//numSamplesInBuffer / 2; i+=2) {
X[i][0] = samples[i];
X[i][1] = samples[i + 1];
NSLog(@"left: %f", X[i][0]);
NSLog(@"right: %f", X[i][1]);
NSLog(@"i: %d", i);
}
}
Когда i = 385
, я получаю EXC_BAD_ACCESS
в строке NSLog(@"left: %f:", X[i][0]);
.
Думая, что это может быть проблема с памятью из-за локального объявления X, я изменил X на свойство, которое вызвало EXC_BAD_ACCESS
в первой строке цикл for в первый раз.
Кто-нибудь знает, почему это может происходить?
X
не то, что вы думаете. Как распределяется? - person Hot Licks   schedule 27.12.2011