Given this code

So (y/z||++x) is true if at least one expression is true, that is either (y/z)!=0 or (++x)!=0 or both. I wonder how the comparison is done? Is (y/z) be truncated to integer or 0 be promoted to double?Code:double x=1.00,y=2,z=4; if (y/z||++x) x+=y/z; printf("%f\n",x);