C | Macro & Preprocessor | Question 1
How many times GeeksQuiz is printed in the above program?
(D) Compile-time error
Explanation: The PRINT macro gets expanded at the pre-processor time i.e. before the compilation time. After the macro expansion, the if expression becomes: if (0++ < 3). Since 0 is a constant figure and represents only r-value, applying increment operator gives compile-time error: lvalue required. lvalue means a memory location with some address.