#include<stdio.h>
int main()
{
int a=10,b=2,c;
a=!++b&&(c=c==c);
printf("b value is %d \n",b);
printf("c value is %d \n",c);
return 0;
}
Value of c should 1 as expression contain equality operator which gives 1 result and that result will get assigned to c i.e 1,but ouput is giving 2.Why it is so?