The C Preprocessor
Last revised March 1997
for GCC version 2
Richard M. Stallman
The C Preprocessor
Transformations Made Globally
Preprocessing Directives
Header Files
Uses of Header Files
The
`#include'
Directive
How
`#include'
Works
Once-Only Include Files
Inheritance and Header Files
Macros
Simple Macros
Macros with Arguments
Predefined Macros
Standard Predefined Macros
Nonstandard Predefined Macros
Stringification
Concatenation
Undefining Macros
Redefining Macros
Pitfalls and Subtleties of Macros
Improperly Nested Constructs
Unintended Grouping of Arithmetic
Swallowing the Semicolon
Duplication of Side Effects
Self-Referential Macros
Separate Expansion of Macro Arguments
Cascaded Use of Macros
Newlines in Macro Arguments
Conditionals
Why Conditionals are Used
Syntax of Conditionals
The
`#if'
Directive
The
`#else'
Directive
The
`#elif'
Directive
Keeping Deleted Code for Future Reference
Conditionals and Macros
Assertions
The
`#error'
and
`#warning'
Directives
Combining Source Files
Miscellaneous Preprocessing Directives
C Preprocessor Output
Invoking the C Preprocessor
Concept Index
Index of Directives, Macros and Options
This document was generated on 4 March 1998 using the
texi2html
translator version 1.51.