2017-07-08 30 views
0

std::decimal::decimal128をC++のstringに変換したいと考えています。私はこれを試しました:std :: decimal :: decimal128をC++の文字列に変換する方法

int main(int argc, char** argv) { 
    std::decimal::decimal128 check1(0.1654689875468); 
    string ee; 
    ee=std::to_string(check1); 

    return 0; 
} 

しかし、それは誤りをもたらします。私は非常に多くの方法を試みましたが、誰も働きません。誰でもアイデアはありますか?前もって感謝します。

+0

* "in C++" *これはC++ではありません。あなたはあなたの特定の実装の参考資料を持っていますか? – DeiDei

+0

これはC++のTSです – Justin

+0

@DeiDei申し訳ありませんが、私はあなたの応答を理解していません。 – emadalamoudi

答えて

0

私は次の関数を作成することによって、問題を解決してきた。私はそれを必要なとき

std::string ToString(std::decimal::decimal128 dec) 
{ 
    long double d(std::decimal::decimal128_to_double(dec)); 
    std::ostringstream oss; 
    oss << std::scientific << std::setprecision(37) << d; 
    return oss.str(); 
} 

後、私はそれを使用することができます。すべての手助けのために

string name= ToString(std::decimal::decimal128_to_double(1.3246546787)); 

感謝を。

関連する問題