the c code is
main()
{
int x=7;
printf("%d\n", x= x++ * x++);
printf("%d\n",x);
}
(Let me warn u that even I didnt know about this strange behaviour
untill recently... One of the messages on "Bdotnetstudent" had a
similar doubt and when this doubt was cleared by another member I came
to know about it...)
There is something known as "sequence point" which is the point at
which the side effects (such as post increment due ++) of any
expression will be complete or null. Since the statement x = x++ * x++
does not define any such proper sequence point, it is left to the
implementation of the compiler to decide how to tackle these kinds of
problems...
Well for more information on sequence point go to this address by
pasting it in ur explorer bar: http://c-faq.com/expr/seqpoints.html