La funzione fclose in C serve a chiudere un file dopo averlo utilizzato. Infatti, se non è più necessario accedere al file, dobbiamo chiuderlo in modo da rendere lo stream disponibile per un nuovo utilizzo.
La sintassi della funzione fclose in C è dunque la seguente:
int fclose(FILE *fp)
Dove FILE *fp è il puntatore a FILE ottenuto dalla precedente chiamata fopen.
Notiamo come fclose ritorna come risultato un intero:
se l’operazione di chiusura è andata a buon fine infatti restituisce 0;
se invece l’operazione di chiusura non è andata a buon fine, allora restituisce EOF, che è un valore costante.
Esempio di utilizzo di fclose
Vediamo un semplice esempio di utilizzo della funzione fclose() in C.
Apriamo un file di testo di nome coding.txt in sola lettura (r) utilizzando la funzione fopen() e dopo con fclose() lo chiudiamo.
Conviene sempre effettuare il controllo per vedere se durante l’apertura del file ci sono stati dei problemi. Per proseguire nel programma dunque basta verificare che il puntatore non restituisca un valore NULL.
FILE *fp; if((fp=fopen("coding.txt","r"))==NULL) { printf("Fallimento!\n"); exit(1); } ... fclose(fp);
N.B. Tutti i file vengono chiusi in maniera automatica se viene chiamata l’istruzione exit o se il programma termina regolarmente. In questi casi dunque non è necessario utilizzare la funzione fclose.
Nelle prossime lezioni studieremo altre funzioni per gestire i file in C e svilupperemo tanti altri esempi d’utilizzo delle funzioni sui file.
Alcuni link utili
Somma elementi diagonale principale di una matrice
Come sommare gli elementi della cornice esterna
Sommare dei numeri di una matrice
Ricerca elementi in una matrice