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( );
and, bitor, bool, expression, not, Chapter 3, <ciso646>