C
#include <stdio.h> int main()
{ int i = 3;
printf (\"%d\", (++i)++);
return 0;
} |
What is the output of the above program?
(A)
3
(B)
4
(C)
5
(D)
Compile-time error
Answer: (D)
Explanation:
In C, prefix and postfix operators need l-value to perform operation and return r-value. The expression (++i)++ when executed increments the value of variable i(i is a l-value) and returns r-value. The compiler generates the error(l-value required) when it tries to post-incremeny the value of a r-value.
Quiz of this Question
Please comment below if you find anything wrong in the above post