0 votes 0 votes i am getting 12 please check it Programming in C programming-in-c output + – Prince Sindhiya asked Dec 21, 2018 • edited Dec 21, 2018 by Prince Sindhiya Prince Sindhiya 993 views answer comment Share Follow See all 23 Comments See all 23 23 Comments reply Show 20 previous comments Magma commented Dec 23, 2018 reply Follow Share Shobhit Joshi yeah right it's totally compiler dependent 0 votes 0 votes `JEET commented Dec 24, 2018 reply Follow Share Though I have executed the program still my concern is that this statement, x = x + fun(&x); x is already assigned with 3 as the input and fun have returned 4. So, the output should be 7. I know that the output is coming to be 12 by executing. Is it like the right to left or left to right assignment kind of thing? @Magma @Prince Sindhiya 0 votes 0 votes Shobhit Joshi commented Dec 24, 2018 reply Follow Share @`JEET your output is 12 because your compiler is using right to left order of evaluation. In C there is no specified order of evaluation, depends on the compiler and order of evaluation and assignment are two different things. 0 votes 0 votes Please log in or register to add a comment.