C陷阱与缺陷(一)----------------------词法“陷阱”

1、‘=’与‘==’

‘=’赋值操作,‘==’判断符号,用于整型变量的比较。在C/C++中若在if判断时误用‘=’代替‘==’,编译器不会报错,因为程序会先进行赋值操作,然后对于赋值后的值做判断,也就是恒真,这样无论怎么判断,始终会进入到if条件中。

在使用if判断时,C/C++建议将常量写在前面,变量写在后面,比如 if(1 ==  i),如果失误写成‘=’,编译器会马上给出错误提示。如果判断的2个值都是变量,那么每次使用if时记得回头看下有没有写成赋值号。

另外‘==’在判断整型的时候使用,如果是float、double等类型,在判断相等时采用差的绝对值和一个精度去做比较,而且要尽量不要带‘=’号。

2、‘&&’和‘||’

‘&&‘如果左边是真,还要继续判断右边是否为真。若左边为假,则直接跳出,不用执行右边。

‘||’如果左边为真,那么右边不用执行。若左边为假,右边任然要执行。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值