2012-04-29 74 views

回答

8

对于正数,你可以使用floor(f)函数获取23,并f - floor(f)得到0.248500部分。

(我链接了C++引用,但C库中存在相同的函数)。

+0

f-floor似乎无效? – CoreCode 2012-04-29 02:15:54

+0

@CoreCode'f'是你变量的假定名称;我正在减去'floor(f)'。 – dasblinkenlight 2012-04-29 02:17:22

+0

啊,是的。这现在更有意义。有效! – CoreCode 2012-04-29 03:05:54

5

如何:

float f = 23.248500; 
int a = (int)f; 
float f_minus_a = f - a; 
7

正确的功能是modf()

+0

+1这真的很好!我在floor()方面遇到了问题,获得0.9999而不是1.0,并且使用modf(),所有东西都像魅力一样工作。 – 2012-06-06 20:37:46