首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >精度长双精度比双精度差

精度长双精度比双精度差
EN

Stack Overflow用户
提问于 2011-10-25 23:12:54
回答 1查看 260关注 0票数 1

当我使用long double时,我得到的精度比使用double差。3.14159265358979323846264L用源代码编写long double const很好吗?或者我应该添加L以外的其他东西

我解决了这个问题。我更改了算法以使其更精确。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-10-25 23:57:53

你不会得到更差的精确度。

发生的情况是,当您打印输出数字时,流库正在截断显示的值。使用std::setprecision获取特定的精度。

代码语言:javascript
复制
double        x = 1.0/3;
long double   y = 1.0/6;

// Prints out the precision
std::cout << "Limit: " << std::numeric_limits<double>::digits10 << "\n";
std::cout << "Limit: " << std::numeric_limits<long double>::digits10 << "\n";

// prints the numbers with max precision.
std::cout << std::setprecision(std::numeric_limits<double>::digits10) << x << "\n";
std::cout << std::setprecision(std::numeric_limits<long double>::digits10) << y << "\n";
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7891504

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档