Result is -
true // clear
false // clear
false // creating doubt
(As book says that ^ (xor) returns true if exactly one operand is true.) Here in the given code (at line 3) b1 is true, so it must prints (b2 ^b1) = true...... please correct me
That isn't tricky at all. Did you notice in 2nd statement b2 is assigned to true? ( b2 = true , instead of b2==true ).
So in 3rd statement both b1 and b2 are true , hence answer is false !!