最近遇到一个bug,输入的一个float数值(488.9),在显示时数值发生了变化.
数据处理过程比较简单,从文件读取文本,然后使用ssanf获取到数值, bug定位很快,基本能确定是ssanf出现的问题,但为何出问题分析了很久.
最后在网上找到答案,ssanf, scanf的输入默认只支持double,不支持float,导致用float出现数值偏差.
奇怪的是,改成double后,编译还有warning,提示应用float,但终究能解决问题.
便这么用了.
float显示错误分析
最新推荐文章于 2022-09-02 08:43:59 发布