浮点变量与零值比较问题

一曲冷凌霜 提交于 2019-11-29 06:49:39

摘抄自:高质量C语言编程思想
浮点变量与零值比较
可将浮点变量用“==”或“!=”与任何数字比较。

千万要留意,无论是float还是double类型的变量,都有精度限制。所以一定要避免将浮点变量用“==”或“!=”与数字比较,应该设法转化成“>=”或“<=”形式。

假设浮点变量的名字为x,应当将

if (x == 0.0)    	//隐含错误的比较

转化为

if ((x>=-EPSINON) &&(x<=EPSINON))

其中EPSINON是允许的误差(即精度)。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!