【发布时间】:2020-05-05 05:07:00
【问题描述】:
假设我有一个double d = 123456789(我知道双精度总是代表一个整数)。我正在尝试使用 C++ 打印它,以便准确地打印 123456789。不幸的是,这不是默认行为:
double d = 123456789;
cout << d << "\n";
output: 1.23457e+08
我发现了以下技巧/作弊:
double d = 123456789;
cout << (long) d << "\n";
output: 123456789
这是这样做的方法,还是使用一些输出操纵器的更清洁的方法?
【问题讨论】:
-
TL;DR 潜在的欺骗:
std::cout << std::fixed << std::setprecision(0) << d;.
标签: c++ printing output double cout