首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

C++中怎么在不使用强制转换的情况下把浮点数改为自然数

2012-04-09 
C++中如何在不使用强制转换的情况下把浮点数改为自然数?就好象达到以下效果一样。floatfValue9.7ffloatnew

C++中如何在不使用强制转换的情况下把浮点数改为自然数?
就好象达到以下效果一样。

float   fValue   =   9.7f
float   newValue   =   static_cast <float> (static_cast <int> (fValue));

[解决办法]
转换成2进制操作
[解决办法]
这么复杂?

[解决办法]
楼主那样最后还不是个float?计算机表示的依然不仅仅是一个整型的9
[解决办法]
float n=floor(f)
[解决办法]
什么啊,难道楼主不是这个意思吗?

float fValue = 9.7f
unsigned int newValue =fValue;//直接赋值newValue不就得到9了么!
[解决办法]
学习,看样子floor是正解,不然就转成字符,截断后转回来。
[解决办法]
不能转换。两个底层表示都不一样,相同的二进制串,对于float和对于int的值是完全不一样的。

热点排行