我想将双精度值打印到std::cout
可移植(GCC、clang、MSVC++),这样所有平台上的输出都是相同的。
我对指数的格式有疑问。以下程序
#include <iostream>
int main()
{
std::cout << 0.1e-7 << std::endl;
return 0;
}
GCC 有这个输出:
1e-08
以及 MSVC 的以下输出
1e-008
如何使两个输出相同?
如果这是一个愚蠢的问题,我很抱歉,但到目前为止我还没有找到答案。所有格式似乎都围绕尾数之前所有内容的格式演变......
编辑: GCC 的输出1e-08
不是1e-8
(如最初所述),因此它符合要求。对困惑感到抱歉。
EDIT2:实际上在 Dietmar 的评论之后将“尾数”重命名为“指数”。维基百科上还有一个关于尾数与显着的部分。