C | Macro & Preprocessor | Question 7

Output?

filter_none

edit
close

play_arrow

link
brightness_4
code

# include <stdio.h>
# define scanf  "%s Geeks Quiz "
int main()
{
   printf(scanf, scanf);
   return 0;
}

chevron_right


(A) Compiler Error
(B) %s Geeks Quiz
(C) Geeks Quiz
(D) %s Geeks Quiz Geeks Quiz


Answer: (D)

Explanation: After pre-processing phase of compilation, printf statement will become.
printf(“%s Geeks Quiz “, “%s Geeks Quiz “);
Now you can easily guess why output is “%s Geeks Quiz Geeks Quiz”.



My Personal Notes arrow_drop_up