tra l'altro...riguardando il codice...mi sono scordato di mettere una fclose() nella funzione read_mat e le varie free() ...che suppongo vadano messe così:
codice:
int main ()
{
    char** mat;
    int i, j;
    int dim;
    
    dim = valutation_dim ( );
    
    mat = (char**)alloco_row ( &dim ); 
    
    mat = read_mat ( &dim );
    
    for ( i=0; i<dim; i++ ) {
        printf ("%s\n", mat[i]);
        free(mat[i]);
    }
    free(mat);
    system ("pause");
    return (1);    
}
giusto??