/I
(附加包含目录)
将目录添加到在其中搜索包含文件的目录列表中。
语法
/I
directory
参数
目录
添加到搜索包含文件的目录列表中的目录。 /I
和 directory 之间的空间是可选的。 包含空格的目录必须用双引号引起来。 目录可以是绝对路径或相对路径。
注解
要添加多个目录,请多次使用此选项。 仅在找到指定的包含文件之前搜索目录。
你可以在与(/X
(忽略标准包含路径))选项相同的命令行上使用此选项。
可以以双引号(或本地优先)形式指定 #include
指令,例如,#include "local.h"
。 或者,它可以以尖括号(或包含路径优先)的形式指定,例如 #include <iostream>
。
编译器按以下顺序搜索目录:
如果使用双引号形式指定
#include
指令,则首先搜索本地目录。 搜索从与包含#include
指令的文件相同的目录中开始。 如果找不到该文件,它会在当前打开的包含文件的目录中搜索下一个,按照打开它们的相反顺序。 搜索从父包含文件的目录中开始进行,然后继续向上到任何祖父包含文件的目录。如果
#include
指令以尖括号形式指定,或者本地目录搜索失败,它会按照在命令行中指定的顺序搜索使用/I
选项指定的目录。INCLUDE
环境变量中指定的目录。
在 Visual Studio 开发环境中设置此编译器选项
打开项目的“属性页” 对话框。 有关详细信息,请参阅在 Visual Studio 中设置 C++ 编译器和生成属性。
选择“配置属性”>“C/C++”>“常规”属性页。
修改“附加包含目录”属性。 可以在此属性中一次指定多个目录。 目录必须用分号 (
;
) 分隔。
以编程方式设置此编译器选项
示例
以下命令按以下顺序查找 main.c
请求的包含文件:首先,如果使用双引号指定,则搜索本地文件。 接下来,在 \include
目录中继续搜索,然后在 \my\include
目录中,最后在分配给 INCLUDE
环境变量的目录中,按从左到右的顺序。
CL /I \include /I\my\include main.c