带flash的网站,宁波网站建设i sp.net,阳江网站建设推广,犀牛云网站建设double类型变量与0比较概述实现double类型概述
日常总是会遇到double类型变量与0之间的比较。非严格情况下直接与0比较了#xff0c;但实际上这是一种错误的写法。double为双精度类型#xff0c;其一般保留15为小数。而Flaot单精度类型一般保留6为小数。故而不能直接与0进行…
double类型变量与0比较概述实现double类型概述
日常总是会遇到double类型变量与0之间的比较。非严格情况下直接与0比较了但实际上这是一种错误的写法。double为双精度类型其一般保留15为小数。而Flaot单精度类型一般保留6为小数。故而不能直接与0进行比较虽然有时候会得到自己想要的结果但并不严谨。
实现
这里选择一个比较小的数1e-8取其近似数来与double类型变量比较。
double类型
double类型等于0
double a 4.343564;
if(fabs(a - 0) 1e-8 ){} //相当于a -(1e-8) a 1e-8double类型大于0
double a 4.343564;
if(a 1e-8 ){}double类型小于0
double a 4.343564;
if(a -(1e-8) ){} double类型不等于0
double a 4.343564;
if(fabs(a - 0) 1e-8 ){} //相当于a -(1e-8) a 1e-8仅以记录若有不对望指出。