Salve a tutti. Ho dei problemi con dichiarazioni di array e passaggio alle funzioni. Ho visto altri esempi qui nel forum, e con questi ho già modificato e aggiustato il codice, ma non mi torna lo stesso.


Il programma deve, in pratica, prendere dei valori da una matrice multidimensionale e riportarli in un'altra.

Per fare questo ho creato una funzione alla quale viene passata la matrice e due interi (che sono la dimensione delle righe e delle colonne)


Volevo sapere se qualcuno di voi mi può spiegare o far notare gli errori che ho fatto in questi passaggi.

//dichiarazione funzione: il primo parametro passato è un array

int func ( int* , int, int );

main()
{...

int matrice[200][2];
...

matrix[a][b]= func (matrice,c,d); //warning 1 e 2
};


int func (matrice[][],c,d) //errore 3 e warning 4
{...
return value;
};

La funzione qui sopra, non la devo dichiarare così? Matrice è un array multidimensionale.


Mi da questi warning e errori, ma non capisco cosa posso aver sbagliato. Vi lascio anche quello che io comprendo dagli errori

1- warning C4047: 'function' : 'int *' differs in levels of indirection from 'int [200][2]'
2- warning C4024: 'mas_cancella' : different types for formal and actual parameter 1
3- error C2087: '<Unknown>' : missing subscript
4- warning C4028: formal parameter 1 different from declaration



Grazie tante per l'aiuto.