c语⾔中int到float的缺失问题解决今天执⾏⼀段代码出错,发现是这么⼀句有问题
this->fDate[iDataCount] = (float)atoi(ppRecord[0]);
其中ppRecord[0]=“20171101”
html里的float是什么意思执⾏后this->fDate[iDataCount]的值为20171100.0。
但是同时这⼀句:
this->fTime[iDataCount] = (float)atoi(ppRecord[1]);
其中ppRecord[1]=“931”
没有问题。着实诡异。
查资料显⽰,有可能是int到float过程中会造成精度缺失,数字越⼤,缺失越多。
于是将fDate类型改为double,问题解决。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论