复制代码 代码如下:
#include
#include
#include
#include
#include
#include
#include
using namespace std;
string do_fraction(long double val, int decplaces=3)
{
ostringstream out;
char DECIMAL_POINT='.'; // 欧洲用法为','
int prec=numeric_limits
out.precision(prec);//覆盖默认精度
out<
size_t n=str.find(DECIMAL_POINT);
if ((n!=string::npos) //有小数点吗?
&& (str.size()> n+decplaces)) //后面至少还有decplaces位吗?
{
str[n+decplaces]=' ';//覆盖第一个多余的数
}
str.swap(string(str.c_str()));//删除nul之后的多余字符
return str;
}



