欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標(biāo)題:
將32位浮點(diǎn)數(shù)fval轉(zhuǎn)換為32位整數(shù)
[打印本頁(yè)]
作者:
liuqq
時(shí)間:
2015-5-21 22:50
標(biāo)題:
將32位浮點(diǎn)數(shù)fval轉(zhuǎn)換為32位整數(shù)
//
// 將32位浮點(diǎn)數(shù)fval轉(zhuǎn)換為32位整數(shù)并存儲(chǔ)在ival中
// 小數(shù)部分將被裁剪掉
//
void TruncToInt32 (int &ival, float fval)
{
ival = *(int *)&fval;
// 提取尾數(shù)
// 注意實(shí)際的尾數(shù)前面還有一個(gè)被省略掉的1
int mantissa = (ival & 0x07fffff) | 0x800000;
// 提取指數(shù)
// 以23分界,指數(shù)大于23則左移,否則右移
// 由于指數(shù)用偏移表示,所以23+127=150
int exponent = 150 - ((ival > > 23) & 0xff);
if (exponent < 0)
ival = (mantissa < < -exponent);
else
ival = (mantissa > > exponent);
// 如果小于0,則將結(jié)果取反
if ((*(int *)&fval) & 0x80000000)
ival = -ival;
}
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1