Я получил ошибку в вызове функции массива в C? - PullRequest
0 голосов
/ 25 февраля 2019

Я получил неожиданную ошибку при вызове функции в C с использованием массива, я немного знаю C и не понимаю, как я могу это исправить.Код основной функции прилагается ниже.

void sum_matrices (int m1[][NUM_COLS], int m2[][NUM_COLS], int num_rows, int result[][NUM_COLS]);
void print_matrix (int m[][NUM_COLS], int num_rows);
void print_array (int a[], int len);

int main(void) {

    int my_matrix_1[][NUM_COLS] = {{1, 5, 3, 4, 2},
                                   {7, 1, 4, 1, 7},
                                   {6, 9, 2, 0, 5}};
    int my_matrix_2[][NUM_COLS] = {{7, 8, 3, 3, 4},
                                   {1, 3, 7, 8, 2},
                                   {1, 3, 5, 6, 0}};
    int num_rows = 3;
    int result[num_rows][NUM_COLS]; // finish this line of code to create the result matrix to pass to sum_matrices

    // add call to sum_matrices to add my_matrix_1 and my_matrix_2

    sum_matrices (my_matrix_1[][NUM_COLS], my_matrix_2[][NUM_COLS], num_rows, result[][NUM_COLS]);

    print_matrix(my_matrix_1, num_rows);
    printf("\n");
    print_matrix(my_matrix_2, num_rows);
    printf("\n");
    print_matrix(result, num_rows);
    return 0;
}

1 Ответ

0 голосов
/ 25 февраля 2019

Ваш "вызов" функции sum_matrices внутри функции main ...

sum_matrices (my_matrix_1[][NUM_COLS], my_matrix_2[][NUM_COLS], num_rows, result[][NUM_COLS]);

представляет собой смесь прямого объявления функции и вызова функции, но ни то, ни другое не завершеноили разрешено в этой позиции в этой форме.

Чтобы вызвать функцию, напишите ...

sum_matrices (my_matrix_1, my_matrix_2, num_rows, result);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...