|
|
Postfixé | [] . (params) expr++ expr-- |
Unaire | ++expr --expr +expr -expr ~ ! |
Conversion | (type)expr |
Multiplicatif | * / % |
Additif | + - |
Décalage | << >> |
Relationnel | < > >= <= |
Test d'égalité | == != |
Et bit à bit | & |
Ou bit à bit exclusif | ^ |
Ou bit à bit inclusif | | |
Et logique | && |
Ou logique | || |
Conditionnel | ?: |
Affectation | = += -= *= /= %= >>= <<= &= ^= |= |
Les opérateurs sont classés par ordre de
priorité.
Les opérateurs binaires sont tous associatifs à gauche,
sauf
l'affectation.
Les opérateurs à effet de bord, comme ++ ne doivent
pas être utilisées lors de l'appel de fonctions car
l'ordre
d'évaluation des paramètres est indéfini. Voir test_effet_bord.c.
$ test_effet_bord
2 1
Le type des opérandes influe sur la nature de
l'opération et son résultat. Certaines conversions sont
également faites de façon implicite. Voir test_types2.c.
$ test_types2
0.000000 0.666667 0.666667