|In C/C++ lines that start with
# are preprocessor directives. What you need to understand about the preprocessor is what it basically does is text replacement. So what happens is that your C/C++ program text, lets call it program.cpp, gets passed through the preprocessor, and the output of that gets passed to the compiler proper.
So lets say you have
#define Circumference c
#define Foo 10
cout << Circumference << " " << Foo << end;
When it gets to the compiler, it sees this:
cout << c << " " << 10
So the compiler proper never sees the
The fine print:
The standards for C and C++ don't specify how the preprocessor is implemented, just how it should behave. Most compilers have chosen to implement the preprocessor as a separate executable, but it certainly doesn't have to be that way.
Keep Calm and Carry On