Both user and system header files are included using the preprocessing
#include’. It has two variants:
filein a standard list of system directories. You can prepend directories to this list with the
-Ioption (see Invocation).
filefirst in the directory containing the current file, then in the quote directories and then the same directories used for
<file>. You can prepend directories to the list of quote directories with the
The argument of ‘
#include’, whether delimited with quote marks or
angle brackets, behaves like a string constant in that comments are not
recognized, and macro names are not expanded. Thus,
#include <x/*y> specifies inclusion of a system header file named
However, if backslashes occur within
file, they are considered
ordinary text characters, not escape characters. None of the character
escape sequences appropriate to string constants in C are processed.
#include "x\n\\y" specifies a filename containing three
backslashes. (Some systems interpret ‘
\’ as a pathname separator.
All of these also interpret ‘
/’ the same way. It is most portable
to use only ‘
It is an error if there is anything (other than comments) on the line after the file name.