Tabla de precedencia del operador para el lenguaje de progtwigción C

¿A qué se parecería una tabla de precedencia de operador correcta que enumera todos los operadores en el lenguaje C?

Realicé búsquedas exhaustivas en la web y encontré muchas de esas tablas de precedencia. Por desgracia, no he encontrado ninguno que cumpla con estos requisitos:

  • Enumera todos los operadores en el lenguaje C tal como se define en ISO 9899: 2011, sin mezclar en ningún operador C ++.
  • Enumera los operadores en el orden de prioridad completo y correcto .

enter image description here


Explicación

Prec. denota la precedencia del operador , donde el grupo 1 tiene la precedencia más alta y el grupo 17 la más baja.

Assoc. denota asociatividad de operador , donde sea aplicable. La asociatividad puede ser de izquierda a derecha o de derecha a izquierda.

Fuentes

Mi ambición con esta publicación es proporcionar una tabla de precedencia del operador en Stack Overflow, que es correcta y canónica. Esta tabla de precedencia del operador corresponde directamente al capítulo 6.5 de ISO 9899: 2011, donde podemos leer (6.5 / 3):

La agrupación de operadores y operandos se indica mediante la syntax. 85)

Y luego como comentario, en la nota informativa (no normativa):

85) La syntax especifica la precedencia de los operadores en la evaluación de una expresión, que es el mismo que el orden de las principales subcláusulas de esta subcláusula, primero la precedencia más alta. / – /

Dentro de cada subcláusula principal, los operadores tienen la misma precedencia. Asociatividad izquierda o derecha se indica en cada subcláusula por la syntax de las expresiones discutidas allí.

Todos los nombres de operadores formales de la tabla se toman del capítulo 6.5, donde tal nombre se puede encontrar en el texto normativo. Se incluyeron nombres informales en los casos en que la comunidad de progtwigdores podría estar más familiarizada con otro nombre que el que figura en el estándar.

Aquí:

http://basen.oru.se/c/operators.html

( Agregué _Alignof , que creo que es el único nuevo operador en C11, a mi propia mesa, y lo publiqué allí. Tal vez eso es hacer trampa, los comentarios y sugerencias sobre cómo mejorar la mesa son bienvenidos).

Este sitio tiene una gran tabla de precedencia:

http://www.difranco.net/compsci/C_Operator_Precedence_Table.htm