相关疑难解决方法(0)

round()for C++中的float

我需要一个简单的浮点舍入函数,因此:

double round(double);

round(0.1) = 0
round(-0.1) = 0
round(-0.9) = -1
Run Code Online (Sandbox Code Playgroud)

我能找到ceil()floor()在math.h中-但不是round().

它是以另一个名称存在于标准C++库中,还是缺少?

c++ floating-point rounding

227
推荐指数
11
解决办法
36万
查看次数

C++:如何将double舍入到int?

可能重复:
C++中float的round()

我有一个双(称为x),意味着55,但实际存储为54.999999999999943157,我刚才意识到.

所以,当我这样做

double x = 54.999999999999943157;
int y = (int) x;
Run Code Online (Sandbox Code Playgroud)

y = 54而不是55!

这困惑了我很久了.如何让它正确圆?

c++ floating-point rounding

88
推荐指数
4
解决办法
34万
查看次数

在C中实现round()的简洁方法?

我使用的嵌入式C没有round()函数它是数学库,在C中实现它的简洁方法是什么?我想把它打印成一个字符串,查找小数位,然后在句点后找到第一个字符,然后在> = 5时向上舍入,否则向下.想知道是否有更聪明的东西.

谢谢,弗雷德

c math floating-point

14
推荐指数
4
解决办法
2万
查看次数

如何(便携)在C/C++中获取DBL_EPSILON

我在Linux(AS 3)上使用GCC 3.4并试图弄清楚DBL_EPSILON,或者至少是一个不错的近似值.我怎样才能以编程方式获得它?

c c++

13
推荐指数
2
解决办法
3万
查看次数

标签 统计

c++ ×3

floating-point ×3

c ×2

rounding ×2

math ×1