Raining : 4 00100
u = 27 11011
It will always return 1 answer
return ( u & Raining == 0) ? 0 : 1;
Here, == solve first then & solve
Raning == 0 , will give 0
Then ( u & 0 ) will be false , means it will go for the second part of ternary
It will always return 1 , if u is non zero.
Then option D is corrrect : Always return 1
return ( (u & Raining) == 0) ? 0 : 1; ( if we write u & Raining in brackets ) then bitwise & of Raing and u will be zero , in that case it will go for the first part of ternary. But this is not the case.