c/c++(0001)...
时间:2010-08-05 来源:shw2004
请填写BOOL,float,指针变量与“零值”比较的if语句。
提示:这里“零值”可以是0,0.0,FALSE或者“空指针”。例如int变量n与“零值”比较的if语句为:
if (n == 0)
if (n != 0)
以此类推。
BOOL flag与“零值”比较的if语句:
if (flag)
if (!flag)
如下写法均属不良风格,不得分:
if (flag == TRUE)
if (flag == 1)
if (flag == FALSE)
if (flag == 0)
char *p与“零值”比较的if语句:
if (p == NULL)
if (p != NULL)
以下均属不良风格,不得分:
if (p == 0) // 容易让人误以为p是整型变量
if (p != 0)
if (p) // 容易让人误以为p是bool变量
if (!p)
float x与“零值”比较的if语句:
const float EPSILON = 0.000001;
if ( (x >= -EPSILON) && (x <= EPSILON) )
不可将浮点变量用“==”或“!=”与数字比较,应该设法转换成“>=”或“<=”此类形式。
以下是错误写法,不得分:
if (x == 0.0)
if (x != 0.0)