GCC的头文件搜索路径

发布时间 2023-03-23 20:50:01作者: temperance

在 C 和 C++ 中,有两种头文件包含方式,引号和尖括号形式,这两种形式的搜索路径是不一样,
搜索路径的顺序如下所示:

  1. 对于引号形式的 include 指令,会首先搜索包含当前文件的目录
  2. 对于引号形式的 include 指令,通过 -iquote 选项指定的目录将会以从左往右的顺序进行搜索。
  3. 通过 -I 选项指定的目录将会以从左往右的顺序进行搜索。
  4. 通过 -isystem 选项指定的目录将会以从左往右的顺序进行搜索。
  5. 标准系统目录将会被搜索
  6. 通过 -idirafter 选项指定的目录将会以从左往右的顺讯进行搜索。

总的来说,引号形式的头文件包含会有两个额外的搜索选项,如果在顺序1和顺序2中的目录中没有找到,
那么引号形式的搜索方式和尖括号形式的搜索方式是一致的。