fwrite
|
Definiert in Header
<stdio.h>
|
||
| (bis C99) | ||
| (seit C99) | ||
Schreibt count Objekte aus dem gegebenen Array buffer in den Ausgabestrom stream . Die Objekte werden geschrieben, als ob jedes Objekt als ein Array von unsigned char reinterpretiert würde und fputc size Mal für jedes Objekt aufgerufen würde, um diese unsigned char s in stream zu schreiben, in Reihenfolge. Die Dateipositionsanzeige für den Strom wird um die Anzahl der geschriebenen Zeichen vorgerückt.
Wenn ein Fehler auftritt, ist der resultierende Wert des Dateipositionsindikators für den Stream unbestimmt.
Inhaltsverzeichnis |
Parameter
| buffer | - | Zeiger auf das erste Objekt im zu schreibenden Array |
| size | - | Größe jedes Objekts |
| count | - | Anzahl der zu schreibenden Objekte |
| stream | - | Zeiger auf den Ausgabestrom |
Rückgabewert
Die Anzahl der erfolgreich geschriebenen Objekte, die geringer sein kann als count falls ein Fehler auftritt.
Wenn
size
oder
count
null ist,
gibt
fwrite
null zurück und führt keine weitere Aktion aus.
Beispiel
#include <assert.h> #include <stdio.h> #include <stdlib.h> enum { SIZE = 5 }; int main(void) { double a[SIZE] = {1, 2, 3, 4, 5}; FILE* f1 = fopen("file.bin", "wb"); assert(f1); size_t r1 = fwrite(a, sizeof a[0], SIZE, f1); printf("wrote %zu elements out of %d requested\n", r1, SIZE); fclose(f1); double b[SIZE]; FILE* f2 = fopen("file.bin", "rb"); size_t r2 = fread(b, sizeof b[0], SIZE, f2); fclose(f2); printf("read back: "); for (size_t i = 0; i < r2; ++i) printf("%0.2f ", b[i]); }
Ausgabe:
wrote 5 elements out of 5 requested read back: 1.00 2.00 3.00 4.00 5.00
Referenzen
- C23-Standard (ISO/IEC 9899:2024):
-
- 7.21.8.2 Die fwrite-Funktion (S.: TBD)
- C17-Standard (ISO/IEC 9899:2018):
-
- 7.21.8.2 Die fwrite-Funktion (S.: TBD)
- C11-Standard (ISO/IEC 9899:2011):
-
- 7.21.8.2 Die fwrite-Funktion (S: 335-336)
- C99-Standard (ISO/IEC 9899:1999):
-
- 7.19.8.2 Die fwrite-Funktion (S: 301-302)
- C89/C90 Standard (ISO/IEC 9899:1990):
-
- 4.9.8.2 Die fwrite-Funktion
Siehe auch
|
(C99)
(C11)
(C11)
(C11)
(C11)
|
gibt formatierte Ausgabe an
stdout
, einen Dateistrom oder einen Puffer aus
(Funktion) |
|
schreibt eine Zeichenkette in einen Dateistrom
(Funktion) |
|
|
liest von einer Datei
(Funktion) |
|
|
C++-Dokumentation
für
fwrite
|
|