Heim >Backend-Entwicklung >C++ >Wie kann man eine Gleitkommazahl mit kontrollierter Präzision und kontrollierten Ziffern präzise in eine Zeichenfolge umwandeln?
Präzise Konvertierung von Gleitkommazahlen in Zeichenfolgen mit Präzision und Ziffernsteuerung
In C umfasst die Konvertierung einer Gleitkommazahl in eine Zeichenfolge die Angabe der Genauigkeit und Anzahl von Dezimalstellen, um eine genaue Darstellung zu gewährleisten.
Verwendung von Stringstream:
Ein gängiger Ansatz ist die Verwendung von Stringstream:
<code class="cpp">#include <iomanip> #include <sstream> double pi = 3.14159265359; std::stringstream stream; stream << std::fixed << std::setprecision(2) << pi; std::string s = stream.str();
Feste Formatierung und Setprecision:
C 17 to_chars-Familie:
Für technische Konvertierungen führt C 17 die to_chars-Familie ein:
<code class="cpp">#include <array> #include <charconv> double pi = 3.14159265359; std::array<char, 128> buffer; auto [ptr, ec] = std::to_chars(buffer.data(), buffer.data() + buffer.size(), pi, std::chars_format::fixed, 2); if (ec == std::errc{}) { std::string s(buffer.data(), ptr); // .... } else { // error handling }</code>
Damit -Methode gibt die Konvertierung eine Zeichenfolge mit der angegebenen Genauigkeit und den angegebenen Ziffern zurück und ermöglicht so eine genaue Darstellung sowohl für allgemeine als auch technische Anwendungen.
Das obige ist der detaillierte Inhalt vonWie kann man eine Gleitkommazahl mit kontrollierter Präzision und kontrollierten Ziffern präzise in eine Zeichenfolge umwandeln?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!