c - "Backwards"C 中的条件

标签 c conditional

<分区>

我正在查看一些代码,发现了一些奇怪的条件,即:

if (NULL != buf) {...}

我想知道是否有特殊的原因要写这样的条件,而不是

if(buf != NULL){...}

我一开始想不出有什么理由这样做,但我不认为这是一个错误。在我看来,他们似乎完成了同样的事情,但第二种方式更直观。使用第一个条件是否有某些特定原因?

最佳答案

是的,它叫做“Yoda conditions”。这个想法是在您打算进行检查时不要意外地分配一个值。大多数现代编译器都应该捕获它。

关于c - "Backwards"C 中的条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31143693/

相关文章:

c - 从 C 访问暂存器内存

c - C 条件语句总是返回 1 或 0 吗?

c# - "not >"是否等于 "<="用于 double

带有 OR 运算符的 AngularJS ng-class 多个条件

conditional - gnuplot 引用 line2 的符号更改 line1 的颜色

c - 在 Fedora 21 中启用 Stack Smashing

在 C 中从数组本身创建数组内部值的副本

c - 用C发送二进制结构到kafka

C:为什么没有怪物吃玩家?

MySQL选择行直到达到固定数量的条件