linux macro in C
int main(void)
{
int linux = 5;
printf("%d",linux);
return 0;
}
When u compile this application using gcc in linux, you will get compilation error, this is because linux is a macro which is defined to 1
You can look this by stopping at the preprocessing stage
gcc -E test.c will stop this at the preprocessing stage.
int main(void)
{
int 1 = 5;
printf("%d",1);
return 0;
}
You can see the linux is expanded to 1 in the preprocessing stage and hence the error.
Comments
Post a Comment