2012-04-13 48 views
-2

可能重複:
What is the difference between #include <filename> and #include 「filename」?C語言,如何包括 「XXX.h」 到<XXX.h>」,文件可能使用的Makefile

我剛剛參與到項目

當我追蹤項目代碼時,我發現

有些pe德隆可以包括由這樣一個頭文件:

包括< XXX.h>

XXX.h是一個頭文件不在系統庫,並通過我們自己的程序員所...

我的問題是如何使用「<」和「>」而不是雙「?

以及如何通過這種方式在其他目錄中包含標題?

例如:

頁眉/ header_a.h 頭/ header_b.h

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

我應該使用Makefile來實現這個?感謝..

+3

答案是,你不。您可以使用<>作爲系統包含文件,「」用於您的文件,因爲這是它們打算使用的方式。 – 2012-04-13 02:14:04

回答

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 ... 
+1

要添加當前目錄,請使用gcc -I。 ... – logain 2012-04-13 02:16:18

+0

感謝這就是我所問... – Jarkid 2012-04-13 02:21:04