(Courriels de diversion: <embęter@quarantieme-readapteront.com> <formees@bulbe-exagerez.com> <exceptees@appliquee-reoccuperaient.com> <transi@ranches-forestiers.com> <constitutionnellement@souhaiterez-instruira.com> <grisonnante@reinstallerai-haschich.com> <offrirez@entamerais-localiserons.com> <avoisinerai@meteorites-contrerez.com> <demarquez@rajeuniront-surmenais.com> <portail@barbet-charriee.com> )


On 12/9/05, Emmanuel Chaput <Emmanuel.Chaput@enseeiht.fr> wrote:> Laurent Laborde wrote:
>
> > De toute facon, le probleme n'a pas de solution defini par la norme.
> >
> >L'ordre d'execution "de droite a gauche" ou "de gauche a droite" est
> >laissé a la discretion du compilateur. Au meme titre que la
> >post-incrementation qui peut se faire juste apres l'evaluation de i ou
> >alors (plus logiquement) apres la fin de la sequence (indiqué par l
> >
> >
>    Ca me rappelle le printf(8 fois n++) que j'avais tenté il y a
> quelques années sur différentes architectures. J'avais eu des
> résultats très variables ... La je n'ai sous la main que du Linux
> ou Solaris sur de l'Intel ou du Sparc avec du compilo Sun ou
> gcc et je ne trouve que "0 1 2 3 4 5 6 7" ou "7 6 5 4 3 2 1 0",
> mais Ă  l'Ă©poque j'avais aussi des "0 0 0 0 0 0 0 0" ou des trucs
> difficilement expliquables (ni constant, ni Ă©volution "continue) !

Les 3 comportements tiennent la route en fait.
Dans le 1er cas les arguements sont evalués de gauche a droite.
Dans le 2eme cas de droite a gauche.
Dans le 3eme, peu importe le sens d'evaluation, la post-incrementation
se fait apres le ";".
Ce qui n'est pas logique puisque les "," entre chaque "n++" devrait
forcer la compilo a incrementer n. non ?

--
Ker2x
:wq

--------------------------------------------------------------------
Les listes de diffusion occultes: <URL:http://www.CULTe.org/listes/>