-2

可能重复:
#include <文件名> 和#include “文件名”有什么区别?

我刚刚参与了一个项目。

当我在跟踪项目代码时,我发现

有些人可以通过这种方式包含头文件:

包括 <XXX.h>

XXX.h 是一个不在系统库中的头文件,由我们自己的程序员制作...

我的问题是如何使用 '<' 和 '>' 而不是 double " ?

以及如何通过这种方式在其他目录中包含标题?

例如:

标题/header_a.h 标题/header_b.h

我可以使用包含 < header_a.h > 和 < header_b.h >...

我应该使用 Makefile 来实现这个吗?谢谢..

4

2 回答 2

2

双引号中的文件是相对于当前目录引用的:

#include "../file.h" // file from parent directory

您通常会将其用于您自己的标题。


尖括号中的文件相对于编译器指定的路径被引用:

#include <sys/bits.h> // file under, e.g.,  /usr/include
#include <thirdpartytools/somelib.h> // file under /path/to/third/party/includes

您通常会将其用于系统头文件或第三方头文件,假设编译器是用类似的东西调用的

gcc -I/usr/include -I/path/to/third/party/includes ...
于 2012-04-13T02:14:32.707 回答
0

<> 通常表示系统头文件,而“”通常表示当前目录中的头文件(通常是您的头文件)。源/参考此处获取更多信息: 在 C++ 中包含头文件时尖括号 < > 和双引号“”之间的区别?

于 2012-04-13T02:14:58.923 回答