Bonjour, j'ai un problème avec la post incrémentation.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
int tab[2];
int n;
tab[0] = 1;
 
n = 0;
n = tab[n]++;
 
printf("n=%d\n", n);
printf("tab[0] =%d\n", tab[0] );
L'exécution de ce code affiche :
n=1
tab[0]=1

Le problème ne se produit pas avec la pré-incrémention (i.e. si je mets n = ++tab[n]).
Je sais également contourner le problème : en affectant le résultat de tab[n]++ à une autre variable que n, ça fonctionne. Mais j'aimerais bien comprendre pourquoi ce code ne fait ce que j'attends.

Merci de m'éclairer sur ce problème...

Maurice