皆さん!私はしばらくの間この問題に苦労してきましたが、これまでのところ解決策は見つかりませんでした。
以下のコードでは、文字列を数値で初期化しています。次に、std::istringstream を使用して、テスト文字列の内容を double に読み込みます。次に、両方の変数を計算します。
#include <string>
#include <sstream>
#include <iostream>
std::istringstream instr;
void main()
{
using std::cout;
using std::endl;
using std::string;
string test = "888.4834966";
instr.str(test);
double number;
instr >> number;
cout << "String test:\t" << test << endl;
cout << "Double number:\t" << number << endl << endl;
system("pause");
}
.exe を実行すると、次のようになります。
文字列テスト: 888.4834966 倍数 888.483
続行
するには任意のキーを押してください。. .
文字列にはさらに多くの桁があり、std::istringstream は 10 個中 6 個しかロードされていないように見えます。すべての文字列を double 変数にロードするにはどうすればよいですか?