if语句和零值比较
几种零值比较的情况:
1. bool类型与零值
bool bTestVal;
最好写成 if(bTestVal) 和 if(!bTestVal)
而不要写成:if(bTestVal == 0)和if(bTestVal != 0)//容易误会
也不要写成:if(bTestVal == TRUE )和if(bTestVal == FALSE)//有些编译器把TRUE当作-1,如visual basic
2. float变量与零值的比较
float fTextVal = 0.0;
if((fTextVal >=0.0 - EPSINON)&&(fTextVal <=0.0 + EPSINON))EPSINON为确定的精度。
3. 空指针与零值比较
int *p = NULL;
if(NULL == p) 和 if(NULL != p),养成把NULL 写在前面,变量写在后面的习惯,因为万一要是漏了一个=号,编译器会报错,而如果写成if(p=NULL),编译器不会报错,查错会很麻烦。