C | Macro & Preprocessor | Question 8
#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.
Last Updated :
06 Feb, 2013
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...