Forum: PC-Programmierung Float-Wert in eine Datei speichern?


von Ben (lightning)


Lesenswert?

Hy ihr Programmierprofis...

Ne Frage:
Wie kann ich einen FLOAT-Wert z.B. in eine Datei speichern ??

Ich will ihn nicht als String hineinspeichern sondern direkt
als Wert(= 32Bit an Daten)...
Außerdem sollte der Wert in LittleEndian alias Intel Formatierung
gespeichert werden, aber das ist eher zweitrangig. Das Hauptanliegen
ist das Schrieben des 32Bit Floatwertes in eine Datei.


Vielen Dank schonmal
Lightning

von Uhu U. (uhu)


Lesenswert?

fwrite(fp, &float_wert, sizeof (float_wert));

fp ist der File-Pointer, den bekommst du von fopen.

von Ben (lightning)


Lesenswert?

@Uhu Uhuhu( ^^ cooler Nickname)
Danke erstmal für deine Antwort!

Mein Compiler hat mir berichtet, dass die funktion
fwrite zu wenig Argumente hat, ich habe das ganze aber
nach ein wenig herumprobieren auf die Reihe bekommen.

Richtig heißt es:
fwrite(&float_wert, 1, sizeof(float_wert), fp);

Trotzdem danke nochmal.
Gruß Lightning

von Rolf Magnus (Gast)


Lesenswert?

Jaja, die komischen inkonsistenten C-I/O-Funktionen. Die 
Parameterreihenfolge der Funktionen wurde vermutlich für jede einzeln 
ausgewürfelt.

> Richtig heißt es:
> fwrite(&float_wert, 1, sizeof(float_wert), fp);

Streng genommen eigentlich:
1
fwrite(&float_wert, sizeof(float_wert), 1, fp);

Der zweite Parameter gibt die Größe eines Wertes an, der dritte, 
wieviele Werte geschrieben werden sollen. Aber die andere Variante wird 
auch funktionieren, da der zweite und der dritte Parameter intern 
soweiso einfach nur miteinander multipliziert werden.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.