Возвращение массива из функции - возвращаемое значение не соответствует (индивидуальный случай) C ++ - PullRequest
0 голосов
/ 11 сентября 2018

У меня есть эта функция

int dctTransform(int matrix[][ndct])
{
int i, j, k, l;

float dct[mdct][ndct];

float ci, cj, dct1, sum;

for (i = 0; i < mdct; i++) {
    for (j = 0; j < ndct; j++) {
        if (i == 0)
            ci = 1 / sqrt(mdct);
        else
            ci = sqrt(2) / sqrt(mdct);
        if (j == 0)
            cj = 1 / sqrt(ndct);
        else
            cj = sqrt(2) / sqrt(ndct);
        sum = 0;
        for (k = 0; k < mdct; k++) {
            for (l = 0; l < ndct; l++) {
                dct1 = matrix[k][l] *
                    cos((2 * k + 1) * i * pipi / (2 * mdct)) *
                    cos((2 * l + 1) * j * pipi / (2 * ndct));
                sum = sum + dct1;
            }
        }
        dct[i][j] = ci * cj * sum;
    }
}
return dct;
}

И я хочу в основном сделать что-то подобное

matrixZ = dctTransform(matrixZ);

У меня ошибка «возвращаемое значение не соответствует» в «return dct», и я не вижу, что здесь не так, как я могу это улучшить. MatrixZ [8] [8] имеет тип int, mdct & ndct = 8.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...