Sì, c'è un errore di fondo: il parametro di una funzione non lo puoi dichiarare int M[][]. La seconda dimensione deve sempre essere specificata, la prima dimensione invece è opzionale (se sai come sono organizzati gli array bidimensionali e come il compilatore "traduce" l'espressione m[i][j], capisci anche il perché).Originariamente inviato da xglobusx
C'è un errore nell'uso delle matrici..
Quindi visto che nel main l'array è dichiarato di 8 x 8, il parametro della funzione lo puoi dichiarare come:
A) int M[][8]
B) int M[8][8]
C) int (*M)[8]
Quest'ultima pur essendo equivalente alle altre due, non è molto comprensibile, quindi sconsigliata.
Se invece ti interessa poter passare ad una funzione una matrice bidimensionale di dimensione "arbitraria", allora è un'altra cosa e tra l'altro se ne è già parlato sul forum.