我找到了导致nan问题的代码.我发现在某些情况下s / m是nan.但我不知道如何解决它.
float gp(float x){ float e = 2.71828183; x *= -1; float s = pow(e,x); float m = (1 + pow(e,x)) * (1 + pow(e,x)); return s / m;}
> 0/0>∞×0> sqrt(-1)>一般“无效操作”(我不确定是否有不超过上述三个)
看着你的代码:无限时间0是可能的,是吗?
编辑:
> 0< = s< = inf> 1< = m< = inf s / m:
> inf / inf确实使负NaN(我测试过)
我认为这是制造NaN的唯一因素.