A “preprocessor directive” is an instruction to the C preprocessor. Preprocessing takes place during the first phase of compilation. This chapter describes preprocessing and explains the “phases of translation,” which are the steps of the process by which source files (or translation units) are translated into executable files.
This chapter also discusses
Macros
The #define and #undef directives
Preprocessing operators
Include files (also known as header files)
Conditional compilation
Line control directives
Error directives
Pragma directives
A “pragma” is an instruction to the C compiler. Pragmas are allowed by ANSI as a way to implement vendor-specific behavior in the compiler.