本文主要是介绍(3)float数据输出打印显示nan,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
最近在编写自己的小项目的时候出现一个莫名其妙的情况:
控件的position莫名其妙的变成nan。position本应是float类型的,现在却输出打印显示nan,完全不知道为什么额。。。
于是求助百度,这才知道:
nan,是not a number的缩写。用于处理计算中出现的错误情况,比如0.0除以0.0或者求负数的平方根。
看这意思多半是在什么地方处理数据的时候处理出现错误了。
但是在有些文章中有人提出可能是由于数据越界造成的,由于这个原因验证需要改太多地方,所以一时也难以验证。
所以目前我能想到且能做的就是在数据出现nan情况是加以判断再重新配置对应数据。
采用的判断方法是:
isnan(x)
if(isnan(x))
{
x = 0.0;
}
else
{
//TODO
}
PS:之所以记录一下,是因为之前一直没有遇到这样的情况。
这篇关于(3)float数据输出打印显示nan的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!