Ho un problema...ovvero non riesco a capire perche passando una matrice in una funzione, la suddetta matrice si "svuota".

Ovvero, facendo un esempio...:

dichiaro la funzione in questo modo --> int funzione (int n, int matr[][n], int i, int j);

richiamo della funzione nel codice del main --> ris = funzione(n, matr, i, j);

inizializzo la posizione matr[1][1] = 1;

nei 2 for che scorreranno tutte le caselle della matrice verrà richiamata la funzione (ovviamente i 2 for avranno i e j come indici).

infine, il codice della funzione --> printf ("%d ", matr[i][j]);



OUTPUT: avrò a video la matrice piena di 0, anche nella posizione matr[1][1] (alla quale invece avevo assegnato 1).

sapete dirmi il motivo?? è come se passando la matrice perdo i dti contenuti in essa....


NB. se la matrice la stampo nel main il problema non si presenta, ovviamente (quindi avrò tutti 0 ed un 1 nella posizione matr[1][1]).