代码如下:
/**********************************************************
* 功能:浮点每种设备精度肯恩更不一样,导致所谓的0值不一
* 定是0,所以一般需要用被比较的数和最小精度单位的正值和负
* 值比较,而不能直接用“==”去比较,方法如下代码。
* 作者:lml 时间:2020年4月14日 15:16
**********************************************************/
#include <stdio.h>
int main(int argc, const char *argv[])
{
float val=0.00000005; //被比较的值
float zr=0.000001; //比较浮点型的最小单位
if(val >= -zr && val <=zr){ //如果在0.000001和-0.000001之间
printf("val is zero!\n");//就认为是0值
}else{
printf("val is not zero!\n");//否则不是0值
}
return 0;
}
结束。