解析C++ 浮点数的格式化显示
解析C++ 浮点数的格式化显示
发布时间:2016-12-28 来源:查字典编辑
摘要:代码如下所示:复制代码代码如下:#include#include#include#include#include#include#inclu...

代码如下所示:

复制代码 代码如下:

#include <stdlib.h>

#include <string>

#include <windows.h>

#include <stdio.h>

#include <iostream>

#include <limits>

#include <sstream>

using namespace std;

string do_fraction(long double val, int decplaces=3)

{

ostringstream out;

char DECIMAL_POINT='.'; // 欧洲用法为','

int prec=numeric_limits<long double>::digits10; // 18

out.precision(prec);//覆盖默认精度

out<<val;

string str= out.str(); //从流中取出字符串

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;

}

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新C语言学习
热门C语言学习
编程开发子分类