man(1) Manual page archive

     CPP(8)                                                     CPP(8)

          cpp - C language preprocessor

          /lib/cpp [ option ...  ] [ ifile [ ofile ] ]

          Cpp interprets control lines (marked with `#') for cc(1) and
          other compilers.  The input, ifile, and output, ofile,
          default to standard input and standard output respectively.

          The options are:

          -P   Do not place `#line' indications on the output.

          -C   Do not remove comments.

               Same as in cc(1). -U overrides -D.

          -M   Pass modification date with file names, in the form
               file@modtime, where modtime is the integer number of
               seconds since the epoch.

          -T   Truncate preprocessor symbols to eight characters.

          The name `__LINE__' is the current line number in the input
          file, `__FILE__' is the file name.  The line number and
          (optionally) the file name may be set by

               #line integer-constant

          These symbols are also predefined in various implementa-
               operating system:
                            ibm, gcos, os, tss, unix
               hardware:    interdata, pdp11, u370, u3b, u3b5, vax
               UNIX system: RES, RT
               lint(1):     lint

          Any number of blanks and tabs are allowed between the ini-
          tial `#' and the control directive.

          A builtin function `defined(name)' or `defined name' may be
          used in constant expressions within a #if control lines to
          test whether name is defined.

     CPP(8)                                                     CPP(8)

          Preprocessor formal parameters are recognized withing quoted
          strings in the replacement text.  When comments are removed,
          they are replaced by null strings; this unofficial feature
          makes it possible to construct identifiers by concatenation.

          /usr/include   standard directory for include files