Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Scrive i dati in un flusso.
Sintassi
size_t fwrite(
const void *buffer,
size_t size,
size_t count,
FILE *stream
);
Parametri
buffer
Puntatore ai dati da scrivere.
size
Dimensioni elemento, in byte.
count
Numero massimo di elementi da scrivere.
stream
Puntatore alla struttura FILE .
Valore restituito
fwrite restituisce il numero di elementi completi scritti dalla funzione, che può essere minore di count se si verifica un errore. Inoltre, se si verifica un errore, non è possibile determinare l'indicatore di posizione del file. stream Se o buffer è un puntatore Null o se viene specificato un numero dispari di byte da scrivere in modalità Unicode, la funzione richiama il gestore di parametri non validi, come descritto in Convalida dei parametri. Se l'esecuzione può continuare, la funzione imposta errno suEINVAL e restituisce 0.
Osservazioni:
La funzione fwrite scrive fino a count elementi, ognuno con una lunghezza pari a size, da buffer in stream di output. Il puntatore di file associato ( stream se presente) viene incrementato del numero di scritture in byte fwrite . Se stream viene aperto in modalità testo, ogni avanzamento riga viene sostituito con una coppia di avanzamento ritorno a capo. La sostituzione non ha effetto sul valore restituito.
Quando stream viene aperto nella modalità di conversione Unicode, ad esempio se stream viene aperto tramite una chiamata a fopen e l'uso di un parametro modalità che include ccs=UNICODE, ccs=UTF-16LE o ccs=UTF-8, o se la modalità viene sostituita da una modalità di conversione Unicode tramite _setmode e un parametro modalità che include _O_WTEXT, _O_U16TEXT o _O_U8TEXT, buffer viene interpretato come un puntatore a una matrice di wchar_t che contiene dati UTF-16. Un tentativo di scrivere un numero dispari di byte in questa modalità causerà un errore di convalida del parametro.
Poiché questa funzione blocca il thread chiamante, è thread-safe. Per una versione che non blocca il thread, vedere _fwrite_nolock.
Per impostazione predefinita, lo stato globale di questa funzione è limitato all'applicazione. Per modificare questo comportamento, vedere Stato globale in CRT.
Requisiti
| Funzione | Intestazione obbligatoria |
|---|---|
fwrite |
<stdio.h> |
Per altre informazioni sulla compatibilità, vedere Compatibility (Compatibilità).
Esempio
Vedere l'esempio per fread.