C语言 如何判断一个浮点数是不是整数(说法不太严格)

2025-04-09 18:34:45
推荐回答(1个)
回答1:

C语言里浮点数和整数的操作和表示都不相同,这种说法很不严格,所以如何判断,就看你自己的定义啦。
我的理解是,如果一个浮点数可以分为整数部分和小数部分,那么你想判断一个浮点数是不是跟它的整数部分基本相同,严格一点说就是误差很小。这样的话,你可以这么写:
double
err
=
1e-10;
//先自己定义误差
x
=
2.9999999997;
if
(abs(int(x)-x)<
err)
//
和它整数部分误差的绝对值是否小于规定的误差
...