Heim > Artikel > Backend-Entwicklung > Wie zeige ich nachgestellte Nullen mit std::cout.precision() in C an?
Korrekte Verwendung von std::cout.precision() zur Anzeige nachgestellter Nullen
In C ist std::cout.precision() legt die Genauigkeit für Gleitkommazahlen fest. Nachgestellte Nullen werden jedoch nicht automatisch angezeigt. Um dieses Problem zu lösen, ist es wichtig, die richtige Verwendung von std::cout.precision() zu verstehen.
Im angegebenen Code:
#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; }
Die Genauigkeit ist auf 4 eingestellt, aber die Die Ausgabe beträgt 0,5 statt 0,5000. Dies liegt daran, dass die Divisionsoperation zu einem Gleitkommawert mit doppelter Genauigkeit führt und das Standardformat std::cout keine nachgestellten Nullen enthält.
Um nachgestellte Nullen anzuzeigen, muss der Manipulator std::fixed übergeben werden schimpfen. Dies weist cout an, eine Festkomma-Notation zu verwenden, die abschließende Nullen explizit anzeigt. Der korrigierte Code:
#include <iostream> #include <stdlib.h> #include <iomanip> int main() { int a = 5; int b = 10; std::cout << std::fixed; std::cout << std::setprecision(4); std::cout << (float)a / (float)b << "\n"; return 0; }
Jetzt beträgt die Ausgabe wie erwartet 0,5000. std::setprecision() setzt die Genauigkeit auf 4 und std::fixed stellt sicher, dass nachgestellte Nullen angezeigt werden.
Das obige ist der detaillierte Inhalt vonWie zeige ich nachgestellte Nullen mit std::cout.precision() in C an?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!