可能重複:
what is the difference between #include <filename> and #include 「filename」頭文件神祕
爲什麼我們要用引號( 「...」)的自定義生成類和大括號內置類(<...>
) ?
可能重複:
what is the difference between #include <filename> and #include 「filename」頭文件神祕
爲什麼我們要用引號( 「...」)的自定義生成類和大括號內置類(<...>
) ?
是的,從我所聽到的,尖括號(<
's)被用來表示標頭是由編譯器提供的,或者是編譯器已經被告知關於頭文件可以在其中的目錄找到(-I
)。引用("
's)通常用於源樹中的頭文件。但是像其他人所說的那樣,這不是要求。
即使頭文件位於源代碼樹中,您仍然必須告訴編譯器如何找到它。 '-I.'不是默認值。 – Borealid 2010-08-22 02:42:32
什麼?我從來沒有說過 - 我是默認的...我說<是爲了類似
至少對於C來說,現在沒有什麼區別。 ISO標準規定文件的位置在兩種情況下都是實現定義的。
通常的方法是使用<>
作爲系統標題(例如/usr/include
之下的東西)和""
作爲您自己的標題,但這不是必需的。
C99的相關位來自6.10.2,「源文件包含」,引用如下。
形式的預處理指令
# include <h-char-sequence> new-line
搜索用於通過 的<
和>
定界符之間的指定序列唯一標識的報頭實現定義的地方的序列,並且使更換即 指令由頭部的全部內容組成。如何指定地點或者標識 是實施定義的。
形式
# include "q-char-sequence" new-line
的預處理指令使更換該指令由所述源文件的全部內容通過"
定界符之間的指定的序列鑑定 。以實現定義的方式搜索指定的源文件 。如果該搜索不被支持,或者如果搜索失敗 ,則該指令被處理是否它與含有相同序列讀
# include <h-char-sequence> new-line
從原始 指令(包括>
字符,如果有的話)重新處理。
報價和鏈接的獎金積分的標準:D – 2010-08-22 02:41:56
爲什麼要麻煩,馬特?它的引用可能是其他每一個這個副本:http://stackoverflow.com/questions/3162030/difference-between-angle-bracket-and-double-quotes-while-including-header/3162067#3162067 http:// stackoverflow .com/questions/21593/what-is-the-difference-between-include-filename-and-include-filename/77092#77092 – Gabe 2010-08-22 02:45:47
我同意,重複 – radman 2010-08-22 02:51:54