Возможно, вы предполагаете, что < >
неявно добавляет .h
в конец имени файла.Это неправда.Используете ли вы < >
или " "
, не имеет значения для имени файла.Он в основном сообщает реализации, в каком порядке он должен проходить, включая каталоги, чтобы найти файл заголовка.
Чтобы процитировать стандарт:
Директива предварительной обработки вида
# include <h-char-sequence> new-line
ищет последовательность мест, определенных реализацией, для заголовка, уникально идентифицируемого указанной последовательностью между разделителями <
и >
, и вызывает замену этой директивы всем содержимым заголовка.То, как определяются места или определяется заголовок, определяется реализацией.
Директива предварительной обработки вида
# include "q-char-sequence" new-line
вызывает замену этой директивы на все содержимое исходного файла, идентифицируемого указанной последовательностью между разделителями "
.Именованный исходный файл ищется в зависимости от реализации.Если этот поиск не поддерживается или если поиск не удался, директива обрабатывается повторно, как если бы она читала
# include <h-char-sequence> new-line
с идентичной содержащейся последовательностью (включая >
символов, если таковые имеются) изоригинальная директива