Em
Linguagens de programação e
Notação matemática, a
associatividade de um
operador é uma propriedade que determina como operadores de mesma
precedência são agrupados na ausência de
parêntesis. Operadores podem ser
associativos-à-esquerda,
associativos-à-direita ou
não-associativos. A associatividade e a precedência de um operador depende da linguagem de programação em questão.
Considere a expressão
a ~ b ~ c. Se o operador
~ tem associatividade à esquerda, essa expressão seria interpretada como
(a ~ b) ~ c e avaliada da esquerda para a direita. Se o operador tem associatividade à direita, a expressão seria interpretada como
a ~ (b ~ c) e avaliada da direita para a esquerda. Se o operador não é associativo, a expressão pode resultar em um erro de sintaxe, como no caso do operador de exponenciação
** da linguagem de programação
Ada, ou pode ter algum significado especial.
Muitos manuais de linguagem de programação fornecem uma tabela de precedência dos operadores e associatividade, ver, por exemplo, tabela de C e C ++.