Heim > Backend-Entwicklung > C++ > Hauptteil

Warum druckt „std::cout.precision()' standardmäßig keine nachgestellten Nullen?

Patricia Arquette
Freigeben: 2024-11-09 04:30:01
Original
904 Leute haben es durchsucht

Why Does `std::cout.precision()` Not Print Trailing Zeros By Default?

Std::cout.precision() und nachgestellte Nullen verstehen

std::cout.precision() ist eine Funktion zur Steuerung der Anzahl der angezeigten Dezimalstellen für Gleitkommawerte. In bestimmten Szenarien werden nachfolgende Nullen jedoch möglicherweise nicht wie erwartet gedruckt.

Beachten Sie den folgenden Codeausschnitt:

#include <iostream>
#include <stdlib.h>
int main()
{
  int a = 5;
  int b = 10;
  std::cout.precision(4);
  std::cout << (float)a / (float)b << "\n";
  return 0;
}
Nach dem Login kopieren

Dieser Code gibt 0,5 statt der erwarteten 0,5000 aus. Dies liegt nicht an den ursprünglichen Integer-Datentypen, sondern an der fehlenden standardmäßigen Unterdrückung von nachgestellten Nullen.

Um nachgestellte Nullen korrekt anzuzeigen, muss der Manipulator std::fixed verwendet werden:

std::cout << std::fixed;
std::cout << std::setprecision(4);
std::cout << (float)a / (float)b << "\n";
Nach dem Login kopieren

Mit diesem Zusatz gibt der Code nun wie vorgesehen 0,5000 aus. Der std::fixed-Manipulator gibt an, dass der Gleitkommawert mit einer festen Anzahl von Dezimalstellen formatiert werden soll, um sicherzustellen, dass nachgestellte Nullen beibehalten werden.

Das obige ist der detaillierte Inhalt vonWarum druckt „std::cout.precision()' standardmäßig keine nachgestellten Nullen?. 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!