or operator

or operator Logical or operator

logical-or-expr := logical-or-expr "||" logical-and-expr | 

    logical-or-expr or logical-and-expr

The logical or operator converts its operands to type bool and returns a bool result. This built-in operator is a short-circuit operator, so if the left operand is true, the expression yields true without evaluating the right operand. Note that if operator or is overloaded, it cannot be short-circuited and must evaluate both operands.

The keyword or is interchangeable with the || token.


int* p;

if (p == NULL or *p == 0)

  skip(  );

See Also

and, bitor, bool, expression, not, Chapter 3, <ciso646>