The operators logical and (&&) and logical or (||) are logical connectives. The result of the evaluation of a logical comparison shall be 1 (defined as true), 0 (defined as false), or, if the result is ambiguous, the unknown value (x). The precedence of && is greater than that of ||, and both are lower than relational and equality operators.

A third logical operator is the unary logical negation operator (!). The negation operator converts a nonzero or true operand into 0 and a zero or false operand into 1. An ambiguous truth value remains as x.

`Example 1—If reg alpha holds the integer value 237 and beta holds the value zero, then the following`

examples perform as described:

regA = alpha && beta; // regA is set to 0

regB = alpha || beta; // regB is set to 1