08/02/06 15:17:12
しかし1の位が0だと小数点以下が3ケタになってしまいます
#include <iostream>
#include <iomanip>
int main() {
using namespace std;
double amount=3.33333;
double aaa=0.3333;
streamsize oldprec = cout.precision();
cout << setprecision(3) << amount << ' ' << aaa << setprecision(oldprec) << endl;
}
$ bjam precision-run
3.33 0.333
EXIT STATUS: 0
こういう場合は文字列処理に持っていくしかないですかねぇ?