#include <stdio.h> #define a 10 int main()
{ printf ( "%d " ,a);
#define a 50
printf ( "%d " ,a);
return 0;
} |
(A) Compiler Error
(B) 10 50
(C) 50 50
(D) 10 10
Answer: (B)
Explanation: Preprocessor doesn’t give any error if we redefine a preprocessor directive. It may give warning though. Preprocessor takes the most recent value before use of and put it in place of a.