c / c++ 整数除法 保留小数及浮点型的比较
目錄
整數(shù)除法獲取float類型結(jié)果
float類型比較
整數(shù)除法獲取float類型結(jié)果
????????很多時候我們在c / c++中都會遇到除法計算,并想獲取一個float 類型的結(jié)果。但是在很多平臺上假如直接進(jìn)行下面的計算(下面的語言是c++):
uint32_t s1Data = 1, s2Data = 10, s3Data = 3, s4Data = 4; float res = (s1Data + s2Data) / (s3Data +s4Data);std::cout << "res " << static_cast<float>(res) << std::endl;????????這時我們并不會獲得我們想要的floa類型的結(jié)果。
????????如果想獲得floa類型的結(jié)果,需要在float計算的前面加上“1.0 *”:
float fRes = 1.0 * (s1Data + s2Data) / (s3Data +s4Data);????????然后我們來看一下對應(yīng)的計算及結(jié)果:
????????那么我們來回想一下為什么會出現(xiàn)這樣的結(jié)果:
????????首先我們來回憶一下c / c++中的整數(shù)運算:/
?????????可以看到,整數(shù)中的 “/”?將會返回除法運算結(jié)果中的整數(shù)部分。
????????而在除法運算的最開始加上“1.0 *”后,我們就等于告訴這個運算,這一個運算應(yīng)該是float類型的計算。這樣就可以獲得我們想要的結(jié)果。
float類型比較
????????可以查看大佬寫的,很詳細(xì):
https://blog.csdn.net/wangjianhs/article/details/105594897https://blog.csdn.net/wangjianhs/article/details/105594897
總結(jié)
以上是生活随笔為你收集整理的c / c++ 整数除法 保留小数及浮点型的比较的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Itext 7 生成PDF总结
- 下一篇: s3c2440移植MQTT