C | Operators | Question 5
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
Please Login to comment...