STD :: SetPrecision不显示尾随的小数
std::setprecision not showing trailing decimals
我试图将双重打印和整数打印为double。为此,我编写了以下程序:
int main()
{
string object="1";
std::stringstream objectString;
objectString << std::setprecision(8) << atof(object.c_str());
cout<<"ObjectString="<<objectString.str()<< " "<<std::setprecision(10) << double(atof(object.c_str())) <<"n";
}
我希望输出为:
ObjectString=1.0 1.0
但是,我的输出为:
ObjectString=1 1
有人可以建议我出错了哪里吗?
强制尾随零,使用 std::fixed
:
std::string object = "1";
std::stringstream objectString;
objectString << std::fixed << std::setprecision(8) << atof(object.c_str());
std::cout << "ObjectString=" << objectString.str() << " ";
std::cout << std::fixed << std::setprecision(10) << double(atof(object.c_str())) << "n";
输出:
ObjectString=1.00000000 1.0000000000
强制输出始终显示小数点的方法是使用 std::showpoint
:
#include <iostream>
#include <iomanip>
int main() {
double d = 1.0;
std::cout << std::setprecision(1) << d << 'n';
std::cout << std::setprecision(1) << std::showpoint << d << 'n';
return 0;
}
[temp]$ ./a.out
1
1.
[temp]$
相关文章:
- 比较并显示使用最小值(a,b)和最大值(a、b)升序排列的4个数字
- C++,OpenCV,尝试显示图像时"OpenCV(4.3.0) Error: Assertion failed (size.width>0 && size.height>0)"此错误
- 字符串-C++后显示的随机字符
- 继承期间显示未知行为的子类
- 仅使用绝对值对数组进行排序,并在C++中显示实际值
- C++将浮点指针值舍入为小数位数
- 如何设置数字格式以显示C 中的所有小数位数
- C 圆形为1个小数,显示2个小数
- STD :: SetPrecision不显示尾随的小数
- 我如何使其显示小数
- C++ - 为什么我的cout代码显示小数不一致
- 关于以二进制存储并显示其小数
- C++不显示小数位数的数字
- 显示带小数位数的数字,而不是整数
- 使用Float或Double类型时不显示小数
- 小数未正确显示 C++
- 如何在 8.th 小数之后擦除/不显示浮点小数
- 从二进制文件读取双精度(到类中)-小数不显示
- 在小数后显示有限的位数
- 在c++中货币计数器中没有显示小数