Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想从一个具有设定精度的函数中返回一个双精度值!这可能吗?我想要 10 -5的准确度!
例如 :
double f(double a ,double b) { //something like return.setprecision(6); return (a+b)/2; }
假设您的意思是截断到小数点后 5 位:
乘以 10 5。四舍五入为整数。将结果除以 10 5。
对于舍入,请使用标准库,以避免超出整数类型的范围。
请注意,结果只能对可以精确表示的数字是完美的。浮点数的常见表示是二进制,尽管 C++ 标准允许十进制表示。这意味着对于大多数数字,结果将不准确。
不,这是不可能的。双精度取决于硬件/CPU等。
无论如何-为什么要这样做?