[an error occurred while processing this directive]

HP OpenVMS Systems

C Programming Language
Content starts here HP C

HP C
User's Guide for OpenVMS Systems


Begin Index

Contents (summary)
Preface Preface
Chapter 1 Developing HP C Programs
Chapter 2 Using OpenVMS Record Management Services
Chapter 3 Using HP C in the Common Language Environment
Chapter 4 Data Storage and Representation
Chapter 5 Preprocessor Directives
Chapter 6 Predefined Macros and Built-In Functions
Appendix A Migrating from VAX C
Appendix B Common Pitfalls
Appendix C Programming Tools
Appendix D HP C Compiler Messages
Appendix E HP C Limits
  Glossary
  Index
  Figures
  Examples
  Tables


Contents


Preface
Preface Preface
Chapter 1
1 Developing HP C Programs
     1.1     DCL Commands for Program Development
     1.2     Creating an HP C Program
         1.2.1         Using TPU
         1.2.2         The EVE Interface to TPU
     1.3     Compiling an HP C Program
         1.3.1         The CC Command
             1.3.1.1             Including Header Files
             1.3.1.2             Listing Header Files
         1.3.2         Compilation Modes
         1.3.3         Microsoft Compatibility Compilation Mode
             1.3.3.1             Unnamed Nested struct or union Members
             1.3.3.2             Block Scope Declaration of static Functions
             1.3.3.3             Treat &* as Having No Effect
             1.3.3.4             char is Not Treated as a Unique Type
             1.3.3.5             Double Semicolons in Declarations
             1.3.3.6             Declaration without a Type
             1.3.3.7             Enumerators in an Enumeration Declaration
             1.3.3.8             Useless Typedefs
             1.3.3.9             Unrecognized Pragmas Accepted
         1.3.4         CC Command Qualifiers
         1.3.5         Compiler Diagnostic Messages
     1.4     Linking an HP C Program
         1.4.1         The LINK Command
         1.4.2         LINK Command Qualifiers
         1.4.3         Linker Input Files
         1.4.4         Linker Output Files
         1.4.5         Linking Against Object Module Libraries and Shareable Images
         1.4.6         Object Module Libraries
         1.4.7         Linker Error Messages
     1.5     Running an HP C Program
     1.6     Passing Arguments to the main Function
     1.7     64-bit Addressing Support
         1.7.1         Qualifiers and Pragmas
             1.7.1.1             The /POINTER_SIZE Qualifier
             1.7.1.2             The __INITIAL_POINTER_SIZE Macro
             1.7.1.3             The /CHECK=POINTER_SIZE Qualifier
             1.7.1.4             Pragmas
         1.7.2         Determining Pointer Size
             1.7.2.1             Special Cases
             1.7.2.2             Mixing Pointer Sizes
         1.7.3         Header File Considerations
         1.7.4         Prologue/Epilogue Files
             1.7.4.1             Rationale
             1.7.4.2             Using Prologue/Epilogue Files
         1.7.5         Avoiding Problems
         1.7.6         Examples
Chapter 2
2 Using OpenVMS Record Management Services
     2.1     RMS File Organization
         2.1.1         Sequential File Organization
         2.1.2         Relative File Organization
         2.1.3         Indexed File Organization
     2.2     Record Access Modes
     2.3     RMS Record Formats
     2.4     RMS Functions
     2.5     Writing HP C Programs Using RMS
         2.5.1         Initializing File Access Blocks
         2.5.2         Initializing Record Access Blocks
         2.5.3         Initializing Extended Attribute Blocks
         2.5.4         Initializing Name Blocks
     2.6     RMS Example Program
Chapter 3
3 Using HP C in the Common Language Environment
     3.1     Basic Calling Standard Conventions
         3.1.1         Register and Stack Usage
         3.1.2         Return of the Function Value
         3.1.3         The Argument List
     3.2     Specifying Parameter-Passing Mechanisms
         3.2.1         Passing Arguments by Immediate Value
         3.2.2         Passing Arguments by Reference
         3.2.3         Passing Arguments by Descriptor
         3.2.4         HP C Default Parameter-Passing Mechanisms
     3.3     Interlanguage Calling
         3.3.1         Calling HP FORTRAN
         3.3.2         Calling VAX MACRO
         3.3.3         Calling HP BASIC
         3.3.4         Calling HP Pascal
     3.4     Sharing Global Data
         3.4.1         Sharing Program Sections with FORTRAN Common Blocks
         3.4.2         Sharing Program Sections with PL/I Externals
         3.4.3         Sharing Program Sections with MACRO Programs
     3.5     OpenVMS Run-Time Library Routines
     3.6     OpenVMS System Services Routines
     3.7     Calling Routines
         3.7.1         Determining the Type of Call
         3.7.2         Declaring an External Routine and Its Arguments
         3.7.3         Calling the External Routine
         3.7.4         System Routine Arguments
         3.7.5         Symbol Definitions
         3.7.6         Condition Values
         3.7.7         Checking System Service Return Values
     3.8     Variable-Length Argument Lists in System Services
     3.9     Return Status Values
         3.9.1         Format of Return Status Values
         3.9.2         Manipulating Return Status Values
         3.9.3         Testing for Success or Failure
         3.9.4         Testing for Specific Return Status Values
     3.10     Examples of Calling System Routines


Previous Next Contents Index