我的 C++ 代码中有这个查询:
query << "UPDATE currency SET value= " << currencyValue
currencyValue 被定义为“const double& currencyValue
”,当我看到这个值时
0.00045545105422339915
但是如果我检查查询的值然后我得到这样的东西
UPDATE currency SET value = 0.000455451
所以小数点丢失了...
有什么想法吗?
最佳答案
您可以尝试调用 setprecision (10)(或您实际需要的任何值)在向流输出 double 值之前。
你可以这样做:
#include <iomanip>
query << "UPDATE currency SET value= " << std::setprecision(10) << currencyValue;
关于c++ - C++ 中的精度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6732666/