Erstellen Sie ein Programm, welches die gegebene Struktur in eine bina ̈re Datei schreibt: #include <stdio .h> int main() { struct { double x, y, z; int n; } value={ 1.2, 2.3, 3.4, 4 };
时间: 2023-12-10 11:40:04 浏览: 58
# include <stdio.h>
Um die gegebene Struktur in eine binaere Datei zu schreiben, koennen wir die Funktion `fwrite()` aus der Standardbibliothek verwenden. Hier ist ein Beispielprogramm:
```c
#include <stdio.h>
int main() {
struct {
double x, y, z;
int n;
} value = {1.2, 2.3, 3.4, 4};
FILE* file = fopen("data.bin", "wb");
if (file == NULL) {
fprintf(stderr, "Fehler beim Oeffnen der Datei!\n");
return 1;
}
fwrite(&value, sizeof(value), 1, file);
fclose(file);
return 0;
}
```
In diesem Programm wird zuerst die Struktur `value` mit den gegebenen Werten initialisiert. Dann wird die Datei "data.bin" zum Schreiben (im binären Modus) geöffnet. Wenn das Öffnen der Datei fehlschlägt, wird eine Fehlermeldung ausgegeben und das Programm beendet.
Die Funktion `fwrite()` schreibt die Daten der Struktur `value` in die Datei. Der erste Parameter ist ein Zeiger auf das zu schreibende Datenobjekt, der zweite Parameter ist die Größe des Datenobjekts und der dritte Parameter ist die Anzahl der zu schreibenden Datenobjekte. In unserem Fall ist dies genau eine Struktur `value`. Der vierte Parameter ist ein Zeiger auf die Datei, in die geschrieben wird.
Schließlich wird die Datei geschlossen und das Programm beendet.
阅读全文