Zahlenausgabe mit double
-
nein, ich erzeuge die datei als ofstream-objekt, also ofstream datei = ("name", ios::app)
und da funktioniert %d nicht, zumindest nicht auf die folgende art:
datei << "%d", datei;
falscher code, oder geht das auf die weise nicht?
-
schreib' doch die double-werte in ein CString-objekt, und dieses dann in die datei.
-
hm, das habe ich grade mal probiert:
CString daten = doublewert;
ofstream datei << daten:
allerdings schreibt der nur seltsame zeichen in die datei, muß ich das anders konvertieren?
-
versuch's doch mal mit nem CFile, wie im beispiel oben
edit:
mit der folgenden zuweisung hab' ichs geschafft, den double-wert in den CString zu schreiben:
double dtest = 14323.1423f; CString teststring = ""; teststring.Format("doublewert: %f",dtest);
-
danke, so werd ichs mal probieren
-
allerdings klappt das bei mir nicht, wie wichtig ist denn das f hinter der Variablendaklaration von dtest? das kann ich nämlich nicht schreiben, da die variable den wert einer datenbankvariablen zugewiesen kriegt. wenn ich das so programmiere wie du in dem beispiel, ändert sich gar nichts in der ausgabe.
-
Servus,
du hast dann wohl ein bisschen viele Nachkommastellen oda? *g* Wievel Nachkommastellen soll es denn haben oder gibst dort keine Mindestbegreznung?
sonst machs so:
CString strTest = ""; strTest.Format("%.3f", dTest);mit ".3" bekommst du 3 Nachkommastellen. Musst mal Testen (Falls das Problem noch besteht)
*winke*
Hellsgore
-
das f hinter der variablendeklaration ist nur von belang, wenn du die variable "von hand" deklarierst.
wenn die veriable den wert nach dem musterdErsterDoubleWert = dZweiterDoubleWert;zugewiesen bekommt, oder es eine membervariable ist, entfällt das f.
-
super, danke, jetzt hats geklappt. der fehler war am ende eher dämlich von mir, habe vergessen, in der dateiausgabe die variable zu ändern.;-)
-
lol, na du hasts wenigstens geschafft
