Normalization is important
if the XOR() macro
is to mimic the operation
of the other Boolean operators in C,
the true/false interpretation of the operands
is based on whether they are nonzero or zero
(see question 9.2).
about this FAQ list