cpp(1)

cpp(1)

The lines following appear in the output if and only if name has been the subject of a previous #define without being the subject of an intervening #undef.

#ifndef name

The lines following do not appear in the output if and only if name has been the subject of a previous #define without being the subject of an intervening #undef.

#include "filename" #include <filename>

Include at this point the contents of ®lename (which are then run through cpp). See the -Ioption above for more detail.

#line integer-constant "filename"

Causes cpp to generate line-control information for the next pass of the C compiler. integer-constantis the line number of the next line and ®lename is the ®le where it comes from. If ®lename and the quotation marks are omitted, the current ®le name is unchanged.

#undef name

Cause the de®nition of name (if any) to be forgotten from now on.

The test directives and the possible #else directives can be nested. cpp supports names up to 255 characters in length.

EXTERNAL INFLUENCES

Environment Variables

LC_CTYPE determines the interpretation of comments and string literals as single- or multibyte charac- ters.

LANG determines the language in which messages are displayed.

If LC_CTYPE is not speci®ed in the environment or is set to the empty string, the value of LANG is used as a default for each unspeci®ed or empty variable. If LANG is not speci®ed or is set to the empty string, it defaults to "C" (see lang(5)). If any internationalization variable contains an invalid setting, cpp behaves as if all internationalization variables are set to "C". See environ(5).

International Code Set Support

Single- and multibyte character code sets are supported.

DIAGNOSTICS

Error messages produced by cpp are intended to be self-explanatory. The line number and ®lename where the error occurred are printed along with the diagnostic.

WARNINGS

When newline characters were found in argument lists for macros to be expanded, previous versions of cpp put out the newlines as they were found and expanded. The current version of cpp replaces these new- lines with blanks to alleviate problems that the previous versions had when this occurred.

DEPENDENCIES

Series 700

The symbols hp9000s700 and _ _hp9000s700 are not reserved symbols recognized by the -Uoption. They are supplied to cpp either automatically by the compiler, or by the use of a compiler option. For example, on a Series 700 system, the command:

cc -v t.c

produces:

/usr/ccs/lbin/cpp t.c /var/tmp/ctmAAAa29220 -D__hp9000s700

-D__hp9000s800 ...

(Also see the -Doption of the cc command.)

FILES

/usr/include Standard directory for #include ®les

c

HP-UX Release 11i: December 2000

− 3 −

Section 1123