使用setprecision打开和关闭

Using setprecision on and off

本文关键字:setprecision 使用      更新时间:2023-10-16

新的堆栈溢出和c++

std::cout << std::fixed << "Starting Balance: $" << std::setprecision(2) << startbal << endl;
    std::cout<< "Annual Interest Rate: " << intrestrate << endl;
    std::cout << std::fixed << "Monthly Payment: $" << std::setprecision(2) <<monthlypay << endl;

这里我试图从我拥有的数组中打印,它的打印大部分是正确的,但我需要第二行不受setprecision的影响,这样年利率就不会改变。

打印后得到:

    Starting Balance: $1000.00
    Annual Interest Rate: 0.05
    Monthly Payment: $120.00

但是我需要它停止四舍五入年利率,因为它应该是0.055。提前感谢您的帮助!

所以记住当前的精度,改变它,然后恢复原来的精度。
在代码中,类似于:

auto const   precBefore  = std::cout.precision();
std::cout << std::setprecision(digitsAfterDecimalCount) << val;
std::cout << std::setprecision(precBefore);