Controllo dei flussi

fopen restituisce l'indirizzo di un oggetto di tipo FILE. Si utilizza questo indirizzo come l'argomento stream a diverse funzioni di libreria per eseguire varie operazioni in un file aperto. Per un flusso di byte, tutti gli input vengono eseguiti come se ogni carattere fosse letto chiamando fgetc e tutti gli output vengono eseguiti come se ogni carattere fosse scritto chiamando fputc. Per un flusso di caratteri wide, tutti gli input vengono eseguiti come se ogni carattere fosse letto chiamando fgetwc e tutti gli output vengono eseguiti come se ogni carattere fosse scritto chiamando fputwc.

È possibile chiudere un file chiamando fclose. Dopo questa operazione l'indirizzo dell'oggetto FILE non sarà valido.

Un oggetto FILE memorizza lo stato di un flusso, tra cui:

  • Un indicatore di errore impostato su un valore diverso da zero da una funzione che rileva un errore di lettura o di scrittura.

  • Un indicatore di fine file impostato su un valore diverso da zero da una funzione che rileva la fine del file durante la lettura.

  • Un indicatore di posizione del file specifica il byte successivo nel flusso da leggere o scrivere, se il file può supportare le richieste di posizionamento.

  • Uno stato del flusso specifica se il flusso accetta letture e/o scritture e se il flusso è non associato, orientato ai byte o orientato ai caratteri wide.

  • Uno stato di conversione mantiene lo stato di ogni carattere multibyte generalizzato parzialmente generato o assemblato, nonché ogni stato di spostamento per la sequenza di byte nel file).

  • Un buffer di file specifica l'indirizzo e la dimensione di un oggetto matrice che le funzioni di libreria possono utilizzare per migliorare le prestazioni delle operazioni di lettura e scrittura nel flusso.

    Non alterare nessun valore memorizzato in un oggetto FILE o in un buffer di file specificato per essere utilizzato con tale oggetto. Non è possibile copiare un oggetto FILE e utilizzare in modo portabile l'indirizzo della copia come un argomento stream a una funzione di libreria.

Vedere anche

File e flussi