У меня возникают некоторые проблемы со следующим фрагментом кода. Это функция для копирования содержимого одного многомерного массива в другой. код выглядит следующим образом:Ошибка прототипа многомерного массива в C
#include<stdio.h>
void copyarray(int ros,int cos,double ard[][cos] ,double arf[][cos]);
int main(){
int rows,columns;
printf("Enter number of rows\n ");
scanf("%d",&rows);
printf("Enter number of columns\n");
scanf("%d",&columns);
double ar[rows][columns];
double ar1[rows][columns];
printf("Enter the elements ");
for(int i=0;i<rows;i++){
for(int j=0;j<columns;j++){
scanf("%lf",&ar[i][j]);
}
}
printf("The 2d array is :\n");
for(int i=0;i<rows;i++){
for(int j=0;j<columns;j++){
printf("%lf ",ar[i][j]);
}
printf("\n");
}
copyarray(rows,columns,ar,ar1);
return 0;
}
void copyarray(int r,int c,double ar[r][c],double arr1[r][c]){
for(int j=0;j<r;j++){
for(int i=0;i<size;i++){
arr1[j][i]=ar[j][i];
}
}
printf("The new array has the following elements:\n");
for(int j=0;j<r;j++){
for(int i=0;i<size;i++){
printf("%lf ",arr1[j][i]);
}
printf("\n");
}
}
Я получаю следующее сообщение об ошибке:
«использование параметра вне тела функции„Cos“»
Может кто-нибудь помочь мне с этим? Благодаря
Обратите внимание, что [C99 допускает использование аргументов в качестве границ массива] (https://gcc.gnu.org/onlinedocs/gcc/Variable-Length.html). – HostileFork
Спасибо, отредактируйте ответ. – Almo
Так что я должен просто попробовать скомпилировать его в компиляторе, который поддерживает стандарт C99? –