C ++ fwrite () - Libreria standard C ++

La funzione fwrite () in C ++ scrive un numero specificato di caratteri nel flusso di output specificato.

prototipo fwrite ()

 size_t fwrite (const void * buffer, size_t size, size_t count, FILE * stream);

La fwrite()funzione scrive il numero di conteggio degli oggetti, ciascuno di dimensione dimensione byte nel flusso di output specificato.

È simile a chiamare fputc () size times per scrivere ogni oggetto. In base al numero di caratteri scritti, l'indicatore di posizione del file viene incrementato. Il valore risultante dell'indicatore di posizione del file per il flusso è indeterminato se si verifica un errore durante la lettura del file.

  • Se gli oggetti non sono banalmente copiabili, il comportamento è indefinito.
  • Se la dimensione o il conteggio è zero, una chiamata a fwriterestituirà zero e non viene eseguita nessun'altra azione.

È definito nel file di intestazione.

Parametri fwrite ()

  • buffer: puntatore al blocco di memoria di cui viene scritto il contenuto.
  • size: dimensione di ogni oggetto in byte.
  • count: il numero di oggetti da leggere.
  • stream: il flusso di file in cui scrivere i dati.

fwrite () Restituisce il valore

La fwrite()funzione restituisce il numero di oggetti letti con successo. Se si verifica un errore, il valore restituito potrebbe essere inferiore a count.

Esempio 1: come funziona la funzione fwrite ()

 #include #include using namespace std; int main() ( int retVal; FILE *fp; char buffer() = "Writing to a file using fwrite."; fp = fopen("data.txt","w"); retVal = fwrite(buffer,sizeof(buffer),1,fp); cout << "fwrite returned " << retVal; return 0; )

Quando esegui il programma, il contenuto del buffer verrà scritto nel file e l'output sarà:

 fwrite ha restituito 1

Esempio 2: come funziona la funzione fwrite () quando count o size è zero

 #include #include using namespace std; int main() ( int retVal; FILE *fp; char buffer() = "Writing to a file using fwrite."; fp = fopen("myfile.txt","w"); retVal = fwrite(buffer,sizeof(buffer),0,fp); cout << "When count = 0, fwrite returned " << retVal << endl; retVal = fwrite(buffer,0,1,fp); cout << "When size = 0, fwrite returned " << retVal << endl; return 0; )

Quando esegui il programma, l'output sarà:

 Quando count = 0, fwrite ha restituito 0 Quando size = 0, fwrite ha restituito 0

Articoli interessanti...