1
2
3
4
5
6
| #define clrscr() 100
main()
{
clrscr();
printf("%d\n",clrscr());
} |
#define clrscr() 100
main()
{
clrscr();
printf("%d\n",clrscr());
}
Click here to view the answer
Answer:
100
Explanation:
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 :
1
2
3
4
5
| main()
{
100;
printf("%d\n",100);
} |
main()
{
100;
printf("%d\n",100);
}
Note:
100; is an executable statement but with no action. So it doesn’t give any problem.