[gelöst durch denken] Boost: Fehler mit Spirit und real_p/assign_a
-
Hallo,
Ich wollte gerade ein kleines Programm schreiben, allerdings funzt das nicht ganz so, wie ich wollte:
Eigentlich will ich ein paar float-Zahlen auslesen (aus einer Datei) und dann speichern, und zwar einzeln. Da das noch nicht alles ist, hab ich mich für spirit entschieden.
Jetzt habe ich eine "rule<>" mit "real_p[assign_a(variable)]", um in variable den Wert dieser Float-Zahl zu speichern. Leider werden meine Zahlen entweder "Nan", oder wirres zeug. (Also viel zu groß/zu klein)
http://www.boost.org/doc/libs/1_35_0/libs/spirit/doc/numerics.html
http://www.ibm.com/developerworks/aix/library/au-boost_parser/float wert=0; rule<> meine_regel = (real_p[assign_a(wert)] >> *space_p); parse(eine_zeile_der_datei.c_str(), meine_regel);Die Werte werden richtig ausgelesen, aber nicht richtig als float in "wert" gespeichert...

edit: Mist, der Fehler lag doch ein paar Zeilen weiter weg in einer anderen Datei, hatte ein paar Dinger zerhackt, hatt dann "eine Zahl" daraus gemacht...

langeweile
-
Pro Zeile in der Datei eine Zahl oder wie? Und schaust du auch, ob das parsen nicht fehlschlägt?
-
Badestrand schrieb:
Pro Zeile in der Datei eine Zahl oder wie? Und schaust du auch, ob das parsen nicht fehlschlägt?
Ja, beides ja, aber ich habs durch Denken gelöst, der Wurm war ne Datei weiter... :xmas1: