打印本文
關(guān)閉窗口
[注意]通達(dá)信整數(shù)減法有時(shí)會算錯(cuò)!
作者:通達(dá)信 來源:cxh99.com 發(fā)布時(shí)間:2013年09月21日
咨詢內(nèi)容:
兩個(gè)整數(shù)相減 20130625 - 19000000 ,結(jié)果應(yīng)該是1130625 ,可通達(dá)信算出來的卻是 1130624!
很簡單的測試,自定義指標(biāo)
結(jié)果1:20130625 - 19000000;
結(jié)果2:20130708 - 19000000;
結(jié)果1是錯(cuò)誤的,而結(jié)果2又是對的。
目前在內(nèi)核5.85和5.83 我都發(fā)現(xiàn)了這樣的問題,通達(dá)信連最基礎(chǔ)的整數(shù)減法都能算錯(cuò),還有什么不能算錯(cuò)的?
看圖
此主題相關(guān)圖片如下345.jpg:
通達(dá)信技術(shù)部:
這個(gè)問題確實(shí)是個(gè)嚴(yán)重的問題。很顯然,它在內(nèi)部是把兩個(gè)整數(shù)估計(jì)用浮點(diǎn)數(shù)的方法來進(jìn)行計(jì)算了。
通達(dá)信客服:
是的。數(shù)據(jù)類型所限,不支持8位整數(shù)。
網(wǎng)友交流:
以下是引用
vs9841
在2013-7-16 16:30:00的發(fā)言:
這個(gè)問題確實(shí)是個(gè)嚴(yán)重的問題。很顯然,它在內(nèi)部是把兩個(gè)整數(shù)估計(jì)用浮點(diǎn)數(shù)的方法來進(jìn)行計(jì)算了。
確如樓主所言,將20130625存在float中再輸出就變成了20130624了。
一段c語言測試:
#include
#include
int main()
{
float a1 = 20130625 ;
printf("a1=%f\n",a1) ;
return 0;
}
網(wǎng)友交流:
官方到現(xiàn)在還沒有出來解決這個(gè)問題 。。那個(gè)float換成double就可以。C語言中這個(gè)float類型通常是32位,其中有8位用于表示指數(shù)部分和符號。24位用于表示其余部份,其中C保證至少小數(shù)點(diǎn)后6位有效,按照浮點(diǎn)數(shù)在內(nèi)存中表示方法。float類型轉(zhuǎn)換整數(shù)精度應(yīng)該是6+1 =7位,所以用float類型轉(zhuǎn)換8位整數(shù)會損失很多精度,至少損失一半的8位整數(shù)精度。所以說這個(gè)問題非常嚴(yán)重
打印本文
關(guān)閉窗口
主站蜘蛛池模板:
黄床大片30分钟免费看
|
一本一本久久a久久综合精品蜜桃
|
玛雅视频网站在线观看免费
|
国产成人亚洲综合无码精品
|
xxxxhd93
|
日本三级s电影
|
亚洲人成无码网站久久99热国产
|
精品久久久久久久久中文字幕
|
乱之荡艳岳目录
|
没带罩子的英语老师
|
又大又湿又紧又爽a视频
|
国产在线a免费观看
|
国语对白做受XXXXX在线中国
|
中文字幕人妻偷伦在线视频
|
最近中文字幕2019国语3
|
亚洲精品在线电影
|
美女免费精品高清毛片在线视
|
国产亚洲日韩欧美一区二区三区
|
亚洲欧美另类一区
|
精品久久久久久无码中文字幕一区
|
国产卡一卡二卡三卡四
|
1000又爽又黄禁片在线久
|
天天综合天天色
|
中文在线视频观看
|
日韩中文字幕在线不卡
|
亚洲国产精品嫩草影院
|
狠狠躁夜夜躁人人爽天天天天97
|
日本xxxx69
|
亚洲专区一路线二
|
波多野结衣作品大全
|
动漫美女www网站免费看动漫
|
青娱乐国产盛宴
|
国产片免费在线观看
|
91热视频在线
|
夭天曰天天躁天天摸在线观看
|
国产激情一区二区三区
|
91久久偷偷做嫩草影院免
|
奇米影视7777久久精品
|
两个人看的视频播放www
|
日本大片免a费观看视频
|
亚欧洲精品在线视频免费观看
|