Examveda
Examveda

Determine Output:
#define clrscr() 100
void main()
{
      clrscr();
      printf("%d", clrscr());
}

A. 0

B. 1

C. 100

D. Error

Answer: Option C

Solution(By Examveda Team)

Preprocessor executes as a seperate pass before the execution of the compiler. So textual replacement of clrscr() to 100 occurs. The input program to compiler looks like this :

void main()
{
      100;
      printf("%d", 100);
}

Note: 100; is an executable statement but with no action. So it doesn't give any problem.


This Question Belongs to C Program >> C Miscellaneous

Join The Discussion

Related Questions on C Miscellaneous