Operador de precedencia y operador ternario.
Tengo un problema en C.
#include<stdio.h>
int main()
{
int a = 10, b = 0, c = 7;
if (a ? b : c == 0)
printf("1");
else if (c = c || a && b)
printf("2");
return 0;
}
Este código imprime 2, pero creo que a? B: c devuelve b = 0 y 0 == 0 devuelve 1. ¿Puedes explicar el código?