The relational operators take operands of arithmetic or pointer type; the logical operators take operands of any type that can be converted to bool
. These operators all return values of type bool
. Arithmetic and pointer operand(s) with a value of zero are false
; all other values are true
. The operands to these operators are rvalues and the result is an rvalue.