Согласно таблицам приоритета C, тернарный условный оператор имеет направление справа налево. ассоциативность.
Итак, можно ли напрямую преобразовать его в эквивалентную лестницу if-else?
Например, можно ли:
x?y?z:u:v;
интерпретировать как:
if(x)
{
if(y)
{ z; }
else
{ u; }
}
else
{ v; }
путем сопоставления с else (:
) с ближайшим непарным if (?
)? Или ассоциативность справа налево подразумевает другое расположение?