c++ - C++ 中的精度

标签 c++ sql decimal concatenation

我的 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/

相关文章:

sql - 如何在 Oracle 上使用 SQL 获取当前年份?

c++ - cpp中的十进制右循环移位

c++ - 如何将 char 传递给需要字符串的函数

c# - 尝试插入两个字母的字符时,指定的转换无效

c++ - 如何在指定文件路径上的程序中使用 ls?

mysql - 无法理解 LIKE 行为

java - 乘以 DecimalFormat 数字(不再正确舍入)

boost 多精度 cpp_dec_float 仅与所需精度进行比较

c++ - C++ 中有错误类型吗?

c++ - std::deque 真的是线程安全的吗?