Who defines C operator precedence and associativity?
Introduction In every textbook on C/C++, you'll find an operator precedence and associativity table such as the following: http://en.cppreference.com/w/cpp/language/operator_precedence One of the questions on StackOverflow asked something like this: What order do the following functions execute: f1() * f2() + f3(); f1() + f2() * f3(); Referring to the previous chart I confidently replied that functions have left-to-right associativity so in the previous statements the are evaluated like this in both cases: f1() -> f2() -> f3() After the functions are evaluated you finish the evaluation like