2013-12-16 31 views
0

我很困惑這兩個詞:圖書館標題基本定義/區別黑白圖書館和標題

據我所知,標題包含函數定義,但我沒有任何Library的概念。我是一個新的程序員,並且一直使用C語言。我現在正在學習C#,所以保持簡單的解釋。如果可能提供的例子也因爲我已經試過此鏈接:

What's the difference between a header file and a library?

但我無法在考慮到這些方面的精確畫面。

+5

那麼,如果該stackoverflow答案不夠清晰.... –

回答

0

正如鏈接所說,接口(標題)告訴你如何調用某些功能(不知道它是如何工作的),而實現(庫)是實際的功能。

示例: 要使用printf函數,您需要包含標題並告訴您如何調用printf函數。它說,printf可以這樣調用

int printf (const char * format, ...); 

庫是實現它

int printf (const char * format, ...) 
{ 
    ... 
    ... 
    ... 
} 

再舉一個例子一: 在Linux上,如果你想使用XML文件中工作,有libxml庫。假設,如果你想讀一個XML文件中,有露出像

xmlTextReaderRead, `xmlReaderForFile` etc... 

這些功能在頭文件<libxml/xmlreader.h>被宣告功能意味着該<libxml/xmlreader.h>頭告訴你如何調用上面說的功能,意味着什麼參數此函數需要什麼,它的返回值是什麼。

libxm2實現這些功能,並且當你編譯代碼時你必須鏈接這個庫。