C 如何查看#包括<&燃气轮机;目录
我知道当使用C 如何查看#包括<&燃气轮机;目录,c,include-path,C,Include Path,我知道当使用#include时,编译器将在定义的系统目录中搜索文件。如何查看这些目录 我之所以问这个问题,是因为我在/usr/local/include中添加了一个包含大量头文件的目录,当我#include时,编译器仍然会说错误:未知类型名“TPM_TAG”。我怀疑/usr/local/include不在编译器要搜索的目录列表中 谢谢 这取决于您使用的是标准标头还是本地用户定义的标头。也许可以尝试使用#include“file”并将头文件改为本地文件,看看是否有效 gcc -I. yourfil
#include
时,编译器将在定义的系统目录中搜索文件
。如何查看这些目录
我之所以问这个问题,是因为我在/usr/local/include中添加了一个包含大量头文件的目录,当我#include
时,编译器仍然会说错误:未知类型名“TPM_TAG”
。我怀疑/usr/local/include不在编译器要搜索的目录列表中
谢谢 这取决于您使用的是标准标头还是本地用户定义的标头。也许可以尝试使用#include“file”并将头文件改为本地文件,看看是否有效
gcc -I. yourfile.c
-I
介绍包含文件的路径
,因此,如果您的子目录中有一些包含文件,如sort/list/等,您的行为应如下所示:
gcc -I. -I./list -I./sort myfile.c
注意:
请为您的头文件考虑使用<代码>“<代码> >,并使用<代码> >代码>系统头文件。如:
#include <iostream>
#include "myheader.h"
#包括
#包括“myheader.h”
编译器附带了大量取决于其确切配置的*.h
文件。也来看看这个。说服GCC/clang认输的一般方法是:
echo | gcc -E -Wp,-v -
(根据需要将
gcc
替换为clang
。您可以根据编译器的不同方式进行搜索,例如使用gcc,可以使用
gcc -print-search-dirs
或者您可以使用选项
gcc-H
编译您的c文件,例如使用gcc-H-c myfile.c
如果找不到该文件,您将有一个致命错误,因此这不是问题所在。您可以使用-I
标志传递包含目录。他可能仍然在/usr/include中有一个头文件的实例,以及/usr/local/include中的更新版本。这取决于您使用的编译器。有了gcc,gcc-v
应该会告诉你它的位置。我有一个目录,里面有我想在我的项目中使用的头文件。这些头文件假定它们位于gcc识别的目录中(因为它们彼此包含在#include
中)。因此,我将这个目录放在/usr/local/include中,并将它们包含在#include
中,得到了未知类型名
错误。我试图删除我的#include语句,看看会发生什么,但我得到了同样的错误。这使我认为编译器没有在/usr/local/include中找到头文件的目录@KeithThompson,该输出的哪个选项提供目录?他不是问如何包含某些文件,而是问如何查看编译器在使用#include
指令包含文件时搜索的目录