2016-03-28 41 views
0

假设有两个浮点数:a,b。我需要将a的值分配给b。然后b将被一个函数转换为一个文本字符串,我不能改变它。转换是通过取一个浮点数的前三个小数位数而不用四舍五入来完成的,其他点则被忽略。这会导致精度损失。如何整数浮点数? C++/CLI - VS2015

问:我怎样才能改变一个这样的值,即再经过皈依b将是一样,如果它是圆的?

希望我设法解释问题,但如果没有,请告诉我。

回答

2

我认为这些函数使用“truncate”:1.2346 => 1.234,对不对?

您可以添加0.0005

b = a + 0.0005 

例子:

回合降低

a = 1.2341; 
b = a + 0.0005; // 1.2346 
string result = yourfunction(b); // 1.234 

回合上

a = 1.2346; 
b = a + 0.0005; // 1.2351 
string result = yourfunction(b); // 1.235 
+0

它可以工作...我心底检查, 非常感谢你。 – mib007