fwrite
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
.