Salve a tutti,

ho la necessità per completare un progetto universitario di implementare alcune funzioni che mi permettano di salvare delle matrici su file, e poi di andarle a rileggere e caricarle in memoria.

Chiedo il vostro aiuto in quanto l'argomento I/O su file non è stato trattato nel corso.

Comunque io per la scrittura su file ho pensato ad una cosa del genere:

codice:
int writeFile(char *pathFile,int var){ 
FILE *my_file; 
my_file = fopen(pathFile, "a"); 
if(my_file){ 
fprintf(my_file,"%d",var); 
return 1;
}else{ 
return 0; 
 } 
}
 
void writeMatrix(char *pathFile,int **Matrice,int righe,int colonne){ 
int i,j; 
for(i = 0;i<righe;i++){ 
 for(j = 0;j<colonne;j++){ 
   if(writeFile(pathFile,Matrice[i][j])); 
         } 
      } 
  }
Il codice funziona, il problema è quando devo andare a ripescare la Matrice per caricarla in memoria, per allocare memoria per la matrice ho bisogno del numero delle righe e delle colonne, che nel momento precedente della scrittura su file posso tranquillamente scriverlo, ma dopo come andare a riprenderlo?

Ho un po di problemi nel riuscire a distinguere(nel momento della lettura) quello che ho precedentemente scritto su file, potreste darmi qualche indicazione a riguardo?

Grazie, Emanuele