A preprocessing directive of the form
#include <h-char-sequence> new-linesearches a sequence of implementation-defined places for a header identified uniquely by the specified sequence between the < and > delimiters, and causes the replacement of thatdirective by the entire contents of the header. How the places are specified or the headeridentified is implementation-defined.
A preprocessing directive of the form
# include "q-char-sequence" new-linecauses the replacement of that directive by the entire contents of the source file identified by the specified sequence between the " delimiters. The named source file is searched for in an implementation-defined manner. If this search is not supported, or if the search fails, the directive is reprocessed as if it read
# includenew-line with the identical contained sequence (including > characters, if any) from the original directive.
A preprocessing directive of the form
# include pp-tokens new-line(that does not match one of the two previous forms) is permitted. The preprocessing tokens after include in the directive are processed just as in normal text. (Each identifier currentlydefined as a macro name is replaced by its replacement list of preprocessing tokens.) Thedirective resulting after all replacements shall match one of the two previous forms. The methodby which a sequence of preprocessing tokens between a < and a > preprocessing token pair or a pair of " characters is combined into a single header name preprocessing token is implementation-defined.
h-char: any member of the source character set except the new-line character and >
q-char: any member of the source character set except the new-line character and "