Heim  >  Artikel  >  Backend-Entwicklung  >  Wie konvertiert man Float in String mit in C angegebenen Genauigkeits- und Dezimalstellen?

Wie konvertiert man Float in String mit in C angegebenen Genauigkeits- und Dezimalstellen?

DDD
DDDOriginal
2024-10-24 06:37:30408Durchsuche

How to Convert Float to String with Precision and Decimal Digits Specified in C  ?

Float in String mit angegebener Präzision und Dezimalstellen konvertieren

Konvertieren eines Floats in einen String in C unter Angabe der Genauigkeit und Anzahl der Dezimalstellen Ziffern sind häufig zum Formatieren numerischer Daten erforderlich.

Ein gängiger Ansatz ist die Verwendung von stringstream:

<code class="cpp">#include <sstream>

double pi = 3.14159265359;
std::stringstream stream;
stream << std::fixed << std::setprecision(2) << pi;
std::string s = stream.str();

Der feste Manipulator gewährleistet die Festkomma-Notation, während setprecision( 2) beschränkt den Dezimalteil auf zwei Ziffern.

C 17 führte die Funktion to_chars für technische Konvertierungen 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);
}</code>

Denken Sie daran, die Compiler-Konformität sicherzustellen, wenn Sie to_chars verwenden.

Das obige ist der detaillierte Inhalt vonWie konvertiert man Float in String mit in C angegebenen Genauigkeits- und Dezimalstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn