写出bool,int ,float,指针变量与“零值”比较的if语句
这是我前几天做的一道笔试题,回来查了一下,大部分博客都有答案,而且有的也写得比较好,我也随性练了一下手。在练习的过程中我对bool,int,float,和指针变量所对应的零值都有了一定的更加深入的认识和理解。先分析后上代码。
bool型就只有true和false两个结果,这里bool型的零值对应的是false;
int型的零值就是0;
float型的零值约为0.000001,即为1e-6;
指针变量的零值就是NULL;
所以判断分别写为:
if(a)
if(0 == a)
if(fabs(a) <= zero)
if(NULL == p)
针对每个类型的判断 我都封装成一个函数
/*********bool和零比值********/
bool bool_and_zero(bool a)
{
if(a)
{
return true;
}
else
{
return false;
}
}
/********int和零比值*************/
int int_and_zero(int a)
{