Heim > Backend-Entwicklung > C++ > Hauptteil

Wie formatiere ich Zahlen mit Kommas in C mithilfe von std::locale und std::stringstream?

Patricia Arquette
Freigeben: 2024-10-26 21:27:02
Original
115 Leute haben es durchsucht

How to Format Numbers with Commas in C   Using std::locale and std::stringstream?

Zahlen mit Kommas in C formatieren

Einführung:

Zahlen in C formatieren mit Kommas sind eine häufige Aufgabe, insbesondere bei der Anzeige von Währungen oder großen numerischen Werten. Dieses Tutorial zeigt eine effiziente Methode zum Hinzufügen von Kommas zu ganzen Zahlen und Doppelzahlen.

Methode:

Um Zahlen mit Kommas zu formatieren, verwenden wir std::locale und std::stringstream.

Schritt 1: Verwenden von std::locale

<code class="cpp">std::stringstream ss;
ss.imbue(std::locale(""));</code>
Nach dem Login kopieren

std:: locale ermöglicht es uns, das Gebietsschema für die Zeichenfolgenformatierung festzulegen. Durch die Verwendung der leeren Zeichenfolge ("") wird sichergestellt, dass das Gebietsschema auf die Standardsystemeinstellungen des Benutzers festgelegt wird.

Schritt 2: Verwendung von std::stringstream

<code class="cpp">ss << std::fixed << value;
Nach dem Login kopieren

std::stringstream wird verwendet, um die formatierte Zeichenfolge zu erstellen. Wir fügen den Wert mit std::fixed in den Stream ein, um den Dezimalpunkt beizubehalten.

Ganzzahlen formatieren:

Für Ganzzahlen rufen Sie einfach auf Verwenden Sie die Methode FormatWithCommas() wie folgt:

<code class="cpp">std::string result1 = FormatWithCommas(7800);
Nach dem Login kopieren

Doppelformatierung:

Verwenden Sie für Doppelformate dieselbe Methode, jedoch mit einer geringfügigen Modifikation Bei der Verwendung von std::fixed:

<code class="cpp">ss << std::fixed << std::setprecision(2) << value;
Nach dem Login kopieren

std::setprecision() wird sichergestellt, dass nur zwei Dezimalstellen angezeigt werden.

Beispielverwendung:

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

std::string FormatWithCommas(double value)
{
    std::stringstream ss;
    ss.imbue(std::locale(""));
    ss << std::fixed << std::setprecision(2) << value;
    return ss.str();
}

int main()
{
    double pi = std::atan(1.0) * 4.0;
    std::string result = FormatWithCommas(pi);
    std::cout << result << "\n";
}</code>
Nach dem Login kopieren

Ausgabe:

3.14
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie formatiere ich Zahlen mit Kommas in C mithilfe von std::locale und std::stringstream?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!