streams ignorieren std::setprecision()



  • Hallo,

    ich habe ein Problem, das eigentlich keines seien sollte.

    bei folgendem Code, bekomme ich wieder mal die Double in ::scientific, also 4.321E-005 ausgegeben!

    #include <math.h>
    #include <iostream>
    #include <string.h>
    #include <sstream>
    #include <iomanip>
    
    	double dou = 0.00004321;
    
    	std::cout << dou;
    	std::cout << std::setprecision(9) << dou;
    

    ich habe eine ganze Menge includes, da ich eigentlich mit stringstreams arbeite, aber das Problem, dass die Genauigkeit nicht verändert werden kann, tritt bei allen streams auf.

    Ich habe dieses schon einmal "gelöst" und damals war alles gut und nun will es nicht mehr? Ich sehe meinen Fehler nicht.

    Gruß Moritz



  • Du kansnt den fixed Modus einstellen, dann haut er dir immer Kommazahlen raus mit deiner Genauigkeit.



  • ja, dass hatte ich auch schon ausprobiert, wollte er auch nicht...

    ABER JETZT GEHT ES EINFACH WIEDER. Ich muss ggf. einfach mal VStudio neu installieren....

    Der Quellcode war mein alter, der schon funktionierte.

    Danke


Log in to reply