muszę zapobiec mój podwójne drukowanie w notacji naukowej w moim pliku,Prevent notacja naukowa w ostream podczas korzystania << z podwójnym
kiedy to zrobić
outfile << X;
muszę zapobiec mój podwójne drukowanie w notacji naukowej w moim pliku,Prevent notacja naukowa w ostream podczas korzystania << z podwójnym
kiedy to zrobić
outfile << X;
Aby ustawić formatowanie pływających zmiennych można użyć kombinacji setprecision(n)
, showpoint
i fixed
. W celu wykorzystania parametryzowane manipulatory strumieniowych jak setprecision(n)
trzeba będzie obejmować iomanip Biblioteka:
#include <iomanip>
setprecision(n)
: ograniczy zmiennoprzecinkowych wyjście n
miejscach, a raz go ustawić, jest on ustawiony, dopóki jawnie wyłączony to dla pozostałej części strumienia wyjściowego.
fixed
: spowoduje wymuszenie, że wszystkie liczby zmiennoprzecinkowe są wyprowadzane w ten sam sposób. Więc jeśli precyzja jest ustawiona na 4 miejscach, 6.2
i 6.20
będą zarówno być wyprowadzane jako:
6.2000
6.2000
showpoint
: zmusi części dziesiętne zmiennej zmiennoprzecinkowej mają być wyświetlane, nawet jeśli nie jest to wyraźnie zestaw. Na przykład, 4
będzie odtwarzany jako:
4.0
Stosując je wszystkie razem:
Co sprawia, że myślisz, że showpoint ma tutaj jakieś znaczenie? Część dziesiętna jest zawsze pokazywana z zerami z powodu precyzji. – Ident
można użyć formatu flagi
Oto przykład użycia http://cplus.about.com/od/learning1/ss/clessontwo_4.htm
jak na swoje pytanie użyć
cout<< fixed<< a<< endl;
Lepsza odpowiedź, ponieważ bezpośrednio odpowiada na pytanie ("naprawiono"). – Anonymous
Wszystkie powyższe odpowiedzi były użyteczne, ale nie bezpośrednio odpowiedzieć na pytanie.
outfile.setf(ios_base::fixed);
outfile << x;
znalazłem odpowiedź w @moogs linku: http://www.cplusplus.com/reference/iostream/ios_base/fmtflags/
Oto program demo: http://ideone.com/FMxRp1
pokrewne dla innych języków: [Haskell] (http://stackoverflow.com/questions/8098457/how-do-i-get-to-haskell-to-output-numbers-not-in-scientific-notation) [Lua] (http://stackoverflow.com/questions/1133639/how-can-i-print -a-ogromna liczba-w-lua-bez-używania-naukowych-notacji) [C++ ostreams] (http://stackoverflow.com/questions/2335657/prevent-scientific-notation-in-ostream-when-using- with-double) [Delphi] (http://stackoverflow.com/questions/6077153/how-to-disable-scie ntific-notation-in-astring-in-delphi) –