Как оценивается a~b~c^d, когда оба оператора имеют одинаковый приоритет, а ~ и ^ являются лево- и право-ассоциативными соответственно. Может кто-нибудь объяснить. Спасибо
Приоритет и ассоциативность операций в компиляторах
Ответы (1)
Это не так. Приоритет и ассоциативность — это способы устранения неоднозначности грамматик, и если вы ограничите свои возможности их использования, вы вернетесь к неоднозначным грамматикам. И наоборот, решение об одном дереве синтаксического анализа означает, что этой проблемы не существует. Например, если вы анализируете b~c^d как (b~c)^d, то либо ~ имеет более высокий приоритет, либо ^ является левоассоциативным.
person
robot1208
schedule
30.06.2016