COHERENT manpages
This page displays the COHERENT manpage for #include [Read another file and include it].
List of available manpages
Index
#include -- Preprocessing Directive Read another file and include it #include <file> #include "file" The preprocessing directive #include tells the preprocessor to replace the directive with the contents of file. The directive can take one of two forms: either the name of the file is enclosed within angle brackets (<header.h>), or it is enclosed within quotation marks ("header.h"). Angle brackets tell cpp to look for file.h in the directories named with the -I options to the cc command line, and then in the standard directory. Quotation marks tell cpp to look for file.h in the source file's directory, then in directories named with the - I options, and then in the standard directory. Most often, the file being included is a header, which is a file that contains function prototypes, macro definitions, and other useful material; as its name implies, it most often appears at the head of a program. The header name must be a string of characters, possibly followed by a period `.' and a single letter, usually (but not always) `h'. A header name may have up to 12 characters to the left of the period, and names may be case sensitive. #include directives may be nested up to at least eight deep. That is to say, a file included by an #include directive may use an #include directive to include a third file; that third file may also use a #include directive to include a fourth file; and so on, up to at least eight files. Note, too, that a subordinate header file is sought relative to the original source file, rather than relative to the header that calls it directly. For example, suppose that a file example.c resides in directory /v/fred/src. If example.c contains the directive #include <header1.h>. The operating system will look for header1.h in the standard directory, /usr/include. If header1.h includes the directive #include <../header2.h> then COHERENT looks for header2.h not in directory /usr, but in directory /v/fred. A #include directive may also take the form #include string, where string is a macro that expands into either of the two forms described above. See Also header files, C preprocessor ANSI Standard §6.8.2 Notes If the header's name is enclosed within quotation marks note that the name is not a string literal, although it looks exactly like one. Thus, a backslash `\' does not introduce an escape character. Trigraphs that occur within a #include directive are substituted, because they are processed by an earlier phase of translation than are #include directives. The mapping provided for included files may map a given name either to an actual file, or to a member in a partitioned data set.