Ok, grazie per la dritta!
Sto a questo punto
int **leggiMatrice(FILE *filename)
{
int righe, colonne, **matrice, i, j, temp;
if (filename == NULL) printf("Errore nell'apertura del file");
else
{
fscanf(filename ,"%d", &righe);
fscanf(filename ,"%d", &colonne);
printf("\nRighe: %d", righe);
printf("\nColonne: %d", colonne);
matrice = (int**) malloc (colonne * sizeof(int*));
//Allocazione dinamica di ogni cella (colonna) di memoria
for(i = 0; i < colonne; i++)
matrice[i] = (int*) malloc (righe * sizeof(int));
fseek(filename, 3, 0);
for(i = 0; i < righe; i++)
for(j = 0; j < colonne; j++)
{
fscanf(filename, "%d", &temp);
matrice[i][j] = temp;
}
for(i = 0; i < righe; i++)
{
for(j = 0; j < colonne; j++)
printf("%d", matrice[i][j]);
printf("\n");
}
}
}
Funziona. Però, la matrice non va stampata in leggiMatrice.c ma nel main.
Dunque, al posto della stampa, metto
return(matrice); .
E nel main come faccio? Grazie