The logical-OR-expression must have integral, floating, or pointer type. It's evaluated in terms of its equivalence to 0. A sequence point follows logical-OR-expression. Evaluation of the operands ...
The first operand is implicitly converted to bool. It is evaluated and all side effects are completed before continuing. If the first operand evaluates to true (1), the second operand is evaluated. If ...