質問
私はC ++文字列に二重に変換しようとしているいくつかの問題を抱えています。ここに私のコードです。
std::string doubleToString(double val)
{
std::ostringstream out;
out << val;
return out.str();
}
ダブルが「10000000」として渡されている場合は、私が持っている問題があります。その後、返される文字列の値が1E + 007
私は「10000000」
などの文字列値を取得できますか解決
#include <iomanip>
using namespace std;
// ...
out << fixed << val;
// ...
また、小数点以下の桁数を設定するsetprecision
を使用して検討するかもしれません
out << fixed << setprecision(2) << val;
他のヒント
#include <iomanip>
std::string doubleToString(double val)
{
std::ostringstream out;
out << std::fixed << val;
return out.str();
}
また、最小幅を設定することができ、同様に、STLのIOマニピュレータとの文字を記入します:
out.width( 9 ); out.fill( ' ' );
所属していません StackOverflow