Guarda tempo fa si discuteva praticamente della stessa cosa in questo topic
http://forum.html.it/forum/showthrea...readid=1335351
in realtà qui il problema era un altro, ma lascia stare e leggi il sesto post: puoi vedere che ho scritto proprio come risolvere il problema che ti sei posto, cioè l'allocazione (e la deallocazione) dinamica della memoria di una matrice all'interno di procedure.
A parte passare alla funzione un puntatore a puntatore a puntatore (che è gestibile, ma magari può dare fastidio) si può ricorrere anche ad un puntatore singolo. Ci sono entrambe le soluzioni... leggi e se hai problemi posta pure.
Fatto questo, ti consiglio (per esercizio) di provare a fare lo stesso con una matrice tridimensionale... in pratica la funzione di allocazione (e similmente quella di deallocazione) sarà dichiarata tipo così:
void my_alloc(int ****x)
può non essere facile riuscire a farlo, ma se ci riesci puoi praticamente dire di aver capito cos'è un puntatore :_D

Rispondi quotando