良好代码风格之if()

本文讨论了在C/C++编程中,布尔、整型、浮点数和指针变量与零值比较的优良和不良风格,强调了避免误导性比较以及处理浮点数精度问题的重要性。
摘要由CSDN通过智能技术生成

布尔变量与零值比较

bool flag;
//优良风格
if(flag)
if(!flag)
//不良风格
if(flag == true)
if(flag == 1)
if(flag == false)
if(flag == 0)


整形与零值的比较

int flag;
//优良风格
if(flag == 0)
if(flag != 0)
//不良风格 会让人误以为 flag是bool变量
if(flag)
if(!flag)

浮点数与零值的比较

不能用浮点变量用 “==”或“!=”与任何数字进行比较,float和double变量都有精度限制,尽量转化为“>=”或“<=”来比较。

float x;
//错误比较方式
if(x == 0.0)
//正确的比较方式
if((x >= EPSINON) && (x <= EPSINON))

EPSINON是允许精度差

指针变量与零值比较

指针变量用“==”或“!=”比较。

//良好风格
if(p == NULL)
if(p != NULL)

//不良风格
if(p == 0)
if(p != 0) 

if(p)
if(!p)

补充

if(NULL == p),这样写是因为如果 不小心写成if(NULL = p),会直接报错。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值