2017-03-14 47 views
0

我有一个第三方库,可以读取实验室秤的值。这个库接口很多比例模型,每个模型都有其自己的精度。 我需要在我的C++应用程序(使用该库)中执行的操作是从秤(双格式)读取重量值并打印出来,同时考虑到秤的精度(这样给用户读取该值,关于刻度精度的信息)。以精确度打印双精度

所以,连接有2位小数精度的尺度,输出应该是例如:23.45克 相反,连接用4位小数精度的尺度,输出应该是例如:23.4567克

事实是我不知道从图书馆的规模精度。 功能如下所示:

double value = scale.Weight(); 

如果我只是打印双值时,输出可以是形式:

1.345999999999999 

代替:

1.346 

是有一种方法可以了解双精度,以便输出以精度精度显示重量?

编辑:规模精度从0到6小数。

+0

ahhh ...你需要从价值中获得精确度?!对不起,我错过了你的问题... – user1810087

+0

@ user1810087:正确,对不起我的解释/英语朗。 – ABCplus

+0

请[编辑]你的问题,让它更清楚你真的需要做什么 - 它并不明显。 –

回答

1

不可以。此信息应该在scale类中,因为double类型具有“固定”精度,您不能更改它。另外输入精度和打印精度是两个不同的东西。您可以使用精度无限的类型,但在点等后总是显示2位数。如果scale没有精度信息,则可以在其中执行辅助类和硬代码精度,然后将其与某些scale属性或类型相关联。