#include
Preprocessing DirectiveThe #include
preprocessing directive has been used throughout this text. The #include
directive causes a copy of a specified file to be included in place of the directive. The two forms of the #include
directive are
#include <filename>
#include "filename"
The difference between these is the location the preprocessor searches for the file to be included. If the filename is enclosed in angle brackets (<
and >
)—used for standard library header files—the preprocessor searches for the specified file in an implementation-dependent manner, normally through predesignated directories. If the file name is enclosed in quotes, the preprocessor searches first in the same directory as the file being compiled, then in the same implementation-dependent manner as for a file name enclosed in angle brackets. This method is normally used to include programmer-defined header files.
The #include
directive is used to include standard header files such as <iostream>
and <iomanip>
. The #include
directive is also used with programs consisting of several source files that are to be compiled together. A header file containing declarations and definitions common to the separate program files is often created and included in the file. Examples of such declarations and definitions are classes, structures, unions, enumerations, function prototypes, constants and stream objects (e.g., cin
).