The behavior of code which contains multiple, ambiguous side effects has always been undefined. (Loosely speaking, by ``multiple, ambiguous side effects'' we mean any combination of increment, decrement, and assignment operators (++, --, =, +=, -=, etc.) in a single expression which causes the same object either to be modified twice or modified and then inspected.
[^] # Re: Oké, voyons...
Posté par gaaaaaAab . En réponse au message Question en programmation. Évalué à 3.
valide en C ? heu ... oui, ça va compiler, mais le résultat de a+=--a + a* ++a est indéfini !
cf la FAQ de comp.lang.c :
Pour C++ et Java, il faudrait vérifier.