Macro Operator Precedence

All preprocessor operators are listed from lowest priority to highest. If more than one operator is listed on a line, all operators on the same line have equal priority. The first column indicates the associativity of the operator.

Right @

Right , (Yes, comma is treated as an operator)

Right <-

Left = ->

Left #

Left || | ^ '|

Left && & '&

Right ! ~

Non assoc. < > == <= >= !=

Non assoc. '< '> '== '<= '>= '!= $LT $GT $EQ $LE $GE $NE

Non assoc. << >>

Left + - '+ '-

Left * / % '* '/

Right **

Right unary + unary - unary '+ unary '-

Right ' (indirection)