Can some one answer this question

avinash_reddy's Avatar, Join Date: Apr 2008
Newbie Member
hi friends can some one answer this question plz

int x=2;
int r= x-- * ++x + ++x;
printf("x= %d, r= %d", x, r);

and also for

r= ++x + ++x * --x;

and

r= ++x + ++x * x--;

can some explain how these expressions are eveluated
0
shabbir's Avatar, Join Date: Jul 2004
Go4Expert Founder
The answer can change from compilers to compilers and so see what is the output in your compiler and just try justifying it.
0
tarek issa's Avatar, Join Date: Apr 2008
Newbie Member
i understood ur question.
there is a trick in doing x++ and ++x, for example:
if doing this:
++x*2 first x multiplyese by 2, and then it (x) increases by 1.
if doing this:
x++*2 first x increases by 1, and then the multiply will be done.
0
technosavvy's Avatar
Contributor
trying googling sequence point and u will understand why it is an undefined behaviour