Ho un vecchio codice C sto cercando di replicare il comportamento in C++. Utilizza i modificatori printf
: "% 06.02f".Corrispondenza printf Formattazione con iomanip
ho ingenuamente pensato che iomanip
era altrettanto capace, e ha fatto:
cout << setfill('0') << setw(6) << setprecision(2)
Quando cerco di uscita il numero di test 123.456, printf
rendimenti:
123,46
Ma cout
rese:
1.2 + e02
C'è qualcosa che posso fare in iomanip
di replicare questo, o devo tornare ad usare printf
?
Prova a dare un'occhiata a boost :: format(). Supporta la sintassi del tipo printf() per iostreams ed è sicuro. –
@JonTrauntvein Anche se apprezzo il suggerimento (soprattutto perché un sacco di cose in boost alla fine lo rendono nello standard) non includo boost laddove possibile. E qui sembra possibile non includerlo. –