/I (Дополнительные каталоги включаемых каталогов)/I (Additional include directories)

Добавляет каталог в список каталогов для поиска включаемых файлов.Adds a directory to the list of directories searched for include files.

СинтаксисSyntax

*/I***Каталог/I directory

АргументыArguments

каталогиdirectory
Каталог, добавляемый в список каталогов для поиска включаемых файлов.The directory to add to the list of directories searched for include files. Пробел между /I и каталогом является необязательным.The space between /I and directory is optional. Каталоги, содержащие пробелы, должны быть заключены в двойные кавычки.Directories that include spaces must be enclosed in double quotes. Каталог может быть абсолютным путем или относительным путем.A directory may be an absolute path or a relative path.

ПримечанияRemarks

Чтобы добавить несколько каталогов, используйте этот параметр более одного раза.To add more than one directory, use this option more than once. Поиск в каталогах выполняется только до тех пор, пока не будет найден указанный включаемый файл.Directories are searched only until the specified include file is found.

Этот параметр можно использовать в той же командной строке, что и параметр ( /X (игнорировать стандартные пути включения)).You can use this option on the same command line as the (/X (Ignore standard include paths)) option.

#include Директиву можно указать в форме с двойной кавычкой (или локальной первой), например #include "local.h" .A #include directive can be specified in double-quote (or local-first) form, for example, #include "local.h". Кроме того, его можно указать в форме угловой скобки (или с добавлением пути, первой), например #include <iostream> .Or, it can be specified in angle-bracket (or include-path-first) form, for example, #include <iostream>.

Компилятор выполняет поиск в каталогах в следующем порядке:The compiler searches directories in the following order:

  1. Если #include директива указана с помощью формы двойных кавычек, она сначала выполняет поиск в локальных каталогах.If the #include directive is specified using double-quote form, it first searches local directories. Поиск начинается в том же каталоге, что и файл, содержащий #include директиву.The search begins in the same directory as the file that contains the #include directive. Если не удается найти файл, он ищет в каталогах текущего открытого файла включаемые файлы в порядке, в котором они были открыты.If it fails to find the file, it searches next in the directories of the currently opened include files, in the reverse order in which they were opened. Поиск начинается в каталоге родительского включаемого файла, а затем выполняется в каталогах всех включаемых файлов-прародителей.The search begins in the directory of the parent include file and continues upward through the directories of any grandparent include files.

  2. Если #include директива указана в форме угловой скобки или при поиске в локальном каталоге произошел сбой, она выполняет поиск каталогов, указанных с помощью /I параметра, в том порядке, в котором они указаны в командной строке.If the #include directive is specified in angle-bracket form, or if the local directory search has failed, it searches directories specified by using the /I option, in the order they're specified on the command line.

  3. Каталоги, указанные в INCLUDE переменной среды.Directories specified in the INCLUDE environment variable.

Установка данного параметра компилятора в среде разработки Visual StudioTo set this compiler option in the Visual Studio development environment

  1. Откройте диалоговое окно Страницы свойств проекта.Open the project's Property Pages dialog box. Подробнее см. в статье Настройка компилятора C++ и свойства сборки в Visual Studio.For details, see Set C++ compiler and build properties in Visual Studio.

  2. Перейдите на страницу свойств Свойства конфигурации > C/C++ > Общие.Select the Configuration Properties > C/C++ > General property page.

  3. Измените свойство Дополнительные каталоги включаемых папок .Modify the Additional Include Directories property. В этом свойстве можно указать несколько каталогов за раз.You can specify more than one directory at a time in this property. Каталоги должны быть разделены точкой с запятой ( ; ).Directories must be separated by a semicolon (;).

Установка данного параметра компилятора программным способомTo set this compiler option programmatically

ПримерExample

Следующая команда ищет включаемые файлы, запрошенные main.c в следующем порядке: сначала, если они указаны с помощью двойных кавычек, выполняется поиск локальных файлов.The following command looks for the include files requested by main.c in the following order: First, if specified by using double-quotes, local files are searched. Затем поиск продолжится в \include каталоге, затем в каталоге и, наконец, в каталогах, \my\include назначенных INCLUDE переменной среды, в порядке слева направо.Next, search continues in the \include directory, then in the \my\include directory, and finally in the directories assigned to the INCLUDE environment variable, in left to right order.

CL /I \include /I\my\include main.c

См. также разделSee also

Параметры компилятора MSVCMSVC Compiler Options
Синтаксис Command-Line компилятора КОМПИЛЯТОРОМ MSVCMSVC Compiler Command-Line Syntax