ciao.
contando che il C gli array bidimensionali li salva in memoria come fossero un array monodimensionale (ovvero ogni riga è consecutiva alla precedente) puoi semplicemente sfruttare l'aritmetica dei puntatori sommando ogni volta l'elemento successivo. Nella chiamata: risultato = somma(x); cambia la riga così: risultato = somma(&x[0][0]); in modo tale da passargli l'indirizzo del primo elemento della prima riga dell'array. Ora la funzione sarà così:
prova e dimmi come va.codice:int somma(int *aPtr) { int totale=0; for(; aPtr <= aPtr[SIZE_R - 1][SIZE_C - 1]; aPtr++) totale += *aPtr; return totale; }

Rispondi quotando