Source file inclusion
From cppreference.com
< cpp | preprocessor
Includes other source file into current source file at the line immediately after the directive .
Contents |
[edit] Syntax
#include < filename>
|
(1) | ||||||||
#include " filename"
|
(2) | ||||||||
[edit] Explanation
Includes source file, identified by filename into the current source file at the line immediately after the directive. In the case the file is not found, program is ill-formed.
1) searches only standard include directories. The standard C++ library, as well as standard C library, is implicitly included in standard include directories. The standard include directories can be controlled by the user through compiler options.
2) firstly searches the directory where the current file resides and, only if the file is not found, searches the standard include directories.
Any preprocessing tokens (macro constants or expressions) are permitted as arguments to #include
as long as they expand to a sequence of characters surrounded by <
>
or "
"
.
[edit] Example
Run this code
#ifndef TEXT #include <iostream> int main() { #define TEXT "Hello, world!" #include __FILE__ #define TEXT "Hello again!" #include __FILE__ } #else std::cout << TEXT << '\n'; #undef TEXT #endif
Output:
Hello, world! Hello again!
[edit] See also
cpp/header | a list of C++ Standard Library header files |