Я работаю над программой на C, которая найдет сумму диагональных элементов матрицы. Одна функция в программе должна печатать матрицу, но я не могу ее скомпилировать из-за ошибки, указанной в заголовке. Код функции выглядит следующим образомОшибка сборки C "Ожидаемый int (*) [10], но аргумент имеет тип 'int' '
void print_matrix(int A[10][10], int a)
{
int i, j ;
printf("The matrix entered is\n") ;
for (i = 0 ; i < a ; i++)
{ for (j = 0 ; j < a ; j++)
printf("\t%d", A[i][j]) ;
}
}
ошибка чтения «ожидаемый" Int (*) [10], но аргумент типа "ИНТ» Я попытался изменить параметр для чтения print_matrix (int (*) [10], int a) и выводится одна и та же ошибка. Использование print_matrix (int A [] [10], int a) также дает ту же ошибку. Мне не удалось найти то, что я делаю неправильно. Любая помощь приветствуется.
Он работал! Большое спасибо, вы могли бы объяснить, в чем проблема? – user1241223
Я подозреваю, что вы вызывали его так: 'print_matrix (A [10] [10], 10)'. Это попытается получить доступ к целому числу, хранящемуся в (10,10), и передать это как первый параметр. – paddy
А теперь это понятно, спасибо за помощь! – user1241223