2
我想用這樣的格式打印浮點數。float <<通過設置整數部分和浮點數部分的精度的操作
.56
我使用下面的函數將float四捨五入到n位數。
double round(double val, int precision)
{
std::stringstream s;
s << std::setprecision(precision) << std::setiosflags(std::ios_base::fixed) << val;
s >> val;
return val;
}
然後下面一行用前導零輸出任意數字到固定長度。
setfill ('0') << setw(5) << number
但是當我嘗試把二者結合起來,我結束了與非一致的長度,就像下面的例子:
8.2 => 008.2
4.57 => 04.56
我想有像這樣的輸出:
8.2 => 08.20
4.57 => 04.57
你能告訴我像string myround (double d, intpart n, floatpart f)
函數返回:
myround (1234.5, 5, 2) =>.50
myround (1234.569, 5, 2) =>.57
我imageine它已被問過,但我找不到它使用內部搜索引擎。