Exculsive OR. This is a binary operator. It returns true or 1 if only 1 of its conditions are true. With 3 or more input, true is returned if an odd number of inputs are true. In C, this is represented by ^.

This is equal to !(A&&B) && (A||B).