Preprocessing Operations
Preprocessing carries out the following operations on your program
source files:
- New-line characters are introduced as needed to replace system-dependent
end-of-line characters, and other system-dependent character-set translations are
performed as needed. Trigraph sequences are replaced by equivalent single characters.
- Each \ (backslash) followed by a new-line character is deleted, and the
next source line is appended to the line that contained the backslash.
- The source text is decomposed into preprocessing tokens tokens and
sequences of white space. A single white space replaces each comment. A source file cannot
end with a partial token or comment.
- Preprocessing directives are run, and macros are expanded.
- Escape sequences in character constants and string literals are replaced
by their equivalent values.
- Adjacent string literals are concatenated.
The rest of the compilation process operates on the preprocessor output,
which is syntactically and semantically analyzed and translated, and then linked as
necessary with other programs and libraries.
![](../images/ngrelc.gif)
Preprocessor Directives
Preprocessor Macros
Conditional Compilation Directives
![](../images/ngrelr.gif)
Source Program Character Set