我有浮点变量“lmin”和“lmax”.我希望只显示4位有效数字.我目前正在使用我在网上找到的表格……
@H_404_2@string textout;
stringstream ss;
ss << lmin;
textout = ss.str();
output(-0.5,-0.875,textout);
ss.str("");
ss << lmax;
textout = ss.str();
output(0.2,textout);
其中“输出”只是我编写的一个函数,用于解析字符串并将其打印到屏幕上.重要的一点是,我如何只打印一个ROUNDED版本的lmin和lmax到ss?
解决方法
使用
std::setprecision
指定小数点后的位数.
@H_404_2@#include <sstream>
#include <iostream>
#include <iomanip>
int main()
{
double d = 12.3456789;
std::stringstream ss;
ss << std::fixed << std::setprecision( 4 ) << d;
std::cout << ss.str() << std::endl;
}
输出:
@H_404_2@12.3457