Announcement

Collapse
No announcement yet.

float nach std::string

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • float nach std::string

    Ich habe ein kleines Problem: Ich möchte eine Fließkommazahl in einen String umwandeln, und zwar so, dass maximal n Stellen nach dem Komma erscheinen, aber nicht mit Endnullen aufgefüllt wird.

    Folgender Code arbeitet mit gültigen Ziffern, d.h. ich bekomme nicht Nachkommastellen sondern Stellen überhaupt:

    Code:
    std::ostringstream s;
    s << std::setprecision(n) << value;
    std::string result = s.str();
    Laut Dokumentation zählt std::setprecision nämlich nur genau dann ausschließlich Nachkommastellen, wenn ich zusätzlich std::fixed einstelle. Das hat aber dann wieder zur Folge, dass immer auf n Stellen nach dem Komma mit Nullen aufgefüllt wird, d.h. z.B. für n=3 die Zahl 72 als "72.000" anstatt "72" ausgegeben wird.

    Hab ich da nur einfach irgendwas in der Dokumentation übersehen, oder bietet die STL tatsächlich keine solche Funktion?

    Schon mal vielen Dank für eure Hilfe
    Peter
Working...
X