Я пытаюсь перемножить две матрицы, хранящиеся внутри одномерных массивов.
Я использую эту функцию, но моя программа падает, как я полагаю, из-за ошибки выхода за границы. Тем не менее, у меня нет (простой )возможности отладки, поэтому я должен решить, верен ли мой код, и мне кажется, что это так...
void SampleUtils::multiplyMatrices(float* matA, int rA, int cA, float* matB,
int rB, int cB, float* matC, int rC, int cC) {
for (int i = 0; i <= rA; i++) {
for (int j = 0; j <= cB; j++) {
float sum = 0.0;
for (int k = 0; k <= rB; k++)
sum = sum + matA[i * cA + k] * matB[k * cB + j];
matC[i * cC + j] = sum;
}
}
Итак, кто-нибудь может узнать, что я сделал не так? ?
Спасибо...