{
int i = 1;
if (i++ && (i == 1))
printf("Yes\n");
else
printf("No\n");
}
В соответствии с моим пониманием, в if, сначала будет вычисляться выражение (i==1), которое должно возвращать 1, а затем оно логически связано с 1, которое является значением i > , поэтому выражение должно возвращать 1 && 1 == 1, но выполняется else.
Может кто-нибудь объяснить, почему выполняется else часть?
