Skip to Main Content United States    
PRODUCTS SUPPORT SOLUTIONS SERVICES
COMPAQ SOFTWARE
Compaq C

Compaq C
Language Reference Manual


Previous Contents Index

Chapter 8
8 Preprocessor Directives and Predefined Macros
     8.1     Macro Definition (#define and #undef)
         8.1.1         Object-Like Form
         8.1.2         Function-Like Form
             8.1.2.1             Rules for Specifying Macro Definitions
             8.1.2.2             Rules for Specifying Macro References
             8.1.2.3             Side Effects in Macro Arguments
         8.1.3         Conversions to String Literals (#)
         8.1.4         Token Concatenation(##)
     8.2     Conditional Compilation (#if, #ifdef, #ifndef, #else, #elif, #endif, and defined)
         8.2.1         The #if Directive
         8.2.2         The #ifdef Directive
         8.2.3         The #ifndef Directive
         8.2.4         The #else Directive
         8.2.5         The #elif Directive
         8.2.6         The #endif Directive
         8.2.7         The defined Operator
     8.3     File Inclusion (#include)
     8.4     Explicit Line Numbering (#line)
     8.5     Implementation-Specific Preprocessor Directive (#pragma)
     8.6     Error Directive (#error)
     8.7     Null Directive (#)
     8.8     Predefined Macro Names
         8.8.1         The __DATE__ Macro
         8.8.2         The __FILE__ Macro
         8.8.3         The __LINE__ Macro
         8.8.4         The __TIME__ Macro
         8.8.5         The __STDC__ Macro
         8.8.6         The __STDC_HOSTED__ Macro
         8.8.7         The __STDC_VERSION__ Macro
         8.8.8         The __STDC_ISO_10646__ Macro
         8.8.9         System-Identification Macros
     8.9     The __func__ Predeclared Identifier
Chapter 9
9 The ANSI C Standard Library
     9.1     Diagnostics (<assert.h>)
     9.2     Complex Arithmetic(<complex.h>)
     9.3     Character Processing (<ctype.h>)
     9.4     Error Codes (<errno.h>)
     9.5     ANSI C Limits (<limits.h> and <float.h>)
     9.6     Localization (<locale.h>)
     9.7     Mathematics (<math.h>)
     9.8     Nonlocal Jumps (<setjmp.h>)
     9.9     Signal Handling (<signal.h>)
     9.10     Variable Arguments (<stdarg.h>)
     9.11     Boolean Type and Values(<stdbool.h>)
     9.12     Common Definitions (<stddef.h>)
     9.13     Standard Input/Output (<stdio.h>)
     9.14     General Utilities (<stdlib.h>)
     9.15     String Processing (<string.h>)
     9.16     Type-generic Math (<tgmath.h>)
         9.16.1         Real-Type Determination
         9.16.2         Unsuffixed Functions in (<math.h>) and (<complex.h>) with the Same Name
         9.16.3         Unsuffixed Functions in (<math.h>) with no c-prefixed Counterpart in (<complex.h>)
         9.16.4         Unsuffixed Functions in (<complex.h>) that are not c-prefixed Counterparts to Functions in (<math.h>)
         9.16.5         Example
         9.16.6         Imaginary Arguments
     9.17     Date and Time (<time.h>)
Appendix A
Appendix A Language Syntax Summary
Appendix B
Appendix B ANSI Conformance Summary
     B.1     Diagnostics (§2.1.1.3)
     B.2     Hosted Environment (§2.1.2.2)
     B.3     Multibyte Characters (§2.2.1.2)
     B.4     Escape Sequences (§2.2.2)
     B.5     Translation Limits (§2.2.4.1)
     B.6     Numerical Limits (§2.2.4.2)
     B.7     Keywords (§3.1.1)
     B.8     Identifiers (§3.1.2)
     B.9     Linkages of Identifiers (§3.1.2.2)
     B.10     Types (§3.1.2.5)
     B.11     Integer Constants (§3.1.3.2)
     B.12     Character Constants (§3.1.3.4)
     B.13     String Literals (§3.1.4)
     B.14     Operators---Compound Assignment (§3.1.5)
     B.15     Characters and Integers---Value-Preserving Promotions (§3.2.1.1)
     B.16     Signed and Unsigned Integer Conversions (§3.2.1.2)
     B.17     Floating and Integral Conversions (§3.2.1.3)
     B.18     Pointer Conversions (§3.2.2.3)
     B.19     Structure and Union Members (§3.3.2.3)
     B.20     The sizeof Operator (§3.3.3.4)
     B.21     Cast Operators (§3.3.4)
     B.22     Multiplicative Operators (§3.3.5)
     B.23     Additive Operators (§3.3.6)
     B.24     Bitwise Shift Operators (§3.3.7)
     B.25     Storage-Class Specifiers (§3.5.1)
     B.26     Type Specifiers (§3.5.2)
     B.27     Structure and Union Specifiers (§3.5.2.1)
     B.28     Variant Structures and Unions
     B.29     Structure Alignment
     B.30     Enumeration Specifiers (§3.5.2.2)
     B.31     Type Qualifiers (§3.5.3)
     B.32     Declarators (§3.5.4)
     B.33     Initialization (§3.5.7)
     B.34     The switch Statement (§3.6.4.2)
     B.35     External Object Definitions (§3.7.2)
     B.36     Conditional Inclusion (§3.8.1)
     B.37     Source File Inclusion (§3.8.2)
     B.38     Macro Replacement---Predefined Macro Names (§3.8.3)
     B.39     The ## Operator (§3.8.3.3)
     B.40     Error Directive (§3.8.5)
     B.41     Pragma Directive (§3.8.6)
     B.42     Function Inline Expansion
     B.43     Linkage Pragmas
     B.44     Other Pragmas


Previous Next Contents Index
Buy Online or Call 1.800.888.0220      privacy statement and legal notices 
STORES CONTACT US SEARCH PRODUCTS SOLUTIONS OPTIONS DEVELOPERS