Thema:
Re:C++ Frage flat
Autor: _bla_
Datum:21.10.21 21:32
Antwort auf:C++ Frage von publicmaw

>Ich will Strings in Doubles umwandeln, klappt aber nicht so richtig…
>
>Diese beiden Strings
>"656521508.266448"
>"656521508.433032"
>
>werden, wenn umgewandelt, beide zu 6.56522e+08
>
>Die Umwandlung habe ich per std::stold versucht, sowie per stringstream:
>
>stringstream s;
>double d;
>s<<str;
>s>>d;
>
>Was ist hier los? Danke!


Sie werden richtig umgewandelt, aber deine Ausgabe gibt Doubles nicht mit voller Genauigkeit aus, weil das normalerweise sehr unpraktisch ist. Kannst du halt ändern, dann siehst du es auch.

stringstream s;
double d,d2;
s << "656521508.266448 656521508.433032";
s >> d >> d2;
cout.precision(17);
cout << d << endl;
cout << d2 << endl;

führt zu:
656521508.26644802
656521508.43303204


< antworten >