Bonjour,

J'ai une petite question concernant la priorité des opérateurs modulo et d'incrémentation. J'ai regardé le tableau donnant les priorités des opérateurs % et ++ : http://c.developpez.com/cours/bernar...ne/node101.php
mais je n'arrive pas à comprendre les résultats du code suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
int i = 9;      // i = 9,    Ok
i = (i++)%10;  // i = 10,     ???
++ étant prioritaire sur % lui-même prioritaire sur =, je pensais que les opérations se déroulaient dans cet ordre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
int i = 9; 
i++; 
i = i%10;     // i = 0
Et pourtant il semble qu'elles soient exécutées comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
int i = 9; 
i = i%10; 
i++;   // i = 10
Je dois avouer que je n'y comprends pas grand chose, même les parenthèses n'y font rien. Si quelqu'un pouvait m'expliquer, je l'en remercie d'avance...