Runden schwimmt mit ostringstream

Ich habe eine Frage in Bezug auf die Konvertierung von float in c++ - string mit ostringstream. Hier ist meine Zeile:

void doSomething(float t)
{
    ostringstream stream; 
    stream << t;
    cout << stream.str();
}

wenn t den Wert -0.89999 es ist Runden zu -0.9, aber wenn es Wert ist 0.0999 oder kleiner als dieser sagen 1.754 e-7, es druckt nur ohne Runden. was kann die Lösung für dieses.

  • Warum nicht, übergeben Sie den Schwimmer direkt an cout?
  • silico, eigentlich will ich mich verwenden, dass der Wert irgendwann in meinem code.
  • silico, was Sie eigentlich sagen, nicht funktioniert.
  • Das ist, warum es ist ein Kommentar, keine Antwort. 🙂 Ich wusste nicht, dass der cout ist für debugging-Zwecke.
InformationsquelleAutor boom | 2010-09-20
Schreibe einen Kommentar