Open In App

C | Macro & Preprocessor | Question 8

Like Article
Like
Save
Share
Report




#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
Previous
Next
Share your thoughts in the comments
Similar Reads