Red Hat Enterprise Linux 3

Using cpp, the C Preprocessor

ISBN: N/A
Table of Contents
1. Overview
1.1. Initial processing
1.2. Tokenization
1.3. The preprocessing language
2. Header Files
2.1. Include Syntax
2.2. Include Operation
2.3. Search Path
2.4. Once-Only Headers
2.5. Computed Includes
2.6. Wrapper Headers
2.7. System Headers
3. Macros
3.1. Object-like Macros
3.2. Function-like Macros
3.3. Macro Arguments
3.4. Stringification
3.5. Concatenation
3.6. Variadic Macros
3.7. Predefined Macros
3.7.1. Standard Predefined Macros
3.7.2. Common Predefined Macros
3.7.3. System-specific Predefined Macros
3.7.4. C++ Named Operators
3.8. Undefining and Redefining Macros
3.9. Macro Pitfalls
3.9.1. Misnesting
3.9.2. Operator Precedence Problems
3.9.3. Swallowing the Semicolon
3.9.4. Duplication of Side Effects
3.9.5. Self-Referential Macros
3.9.6. Argument Prescan
3.9.7. Newlines in Arguments
4. Conditionals
4.1. Conditional Uses
4.2. Conditional Syntax
4.2.1. Ifdef
4.2.2. If
4.2.3. Defined
4.2.4. Else
4.2.5. Elif
4.3. Deleted Code
5. Diagnostics
6. Line Control
7. Pragmas
8. Other Directives
9. Preprocessor Output
10. Traditional Mode
11. Implementation Details
11.1. Implementation-defined behavior
11.2. Implementation limits
11.3. Obsolete Features
11.3.1. Assertions
11.3.2. Obsolete once-only headers
11.3.3. Miscellaneous obsolete features
11.4. Differences from previous versions
12. Invocation
13. Environment Variables
14. GNU Free Documentation License
14.1. ADDENDUM: How to use this License for your documents
Option Index
Index of Directives
Concept Index