據我了解,當我們包含stdio.h整個檔案時,會將整個檔案復制到我們程式的文本中。(基本上我們預先添加它)然后當我們進行函式呼叫時,printf()為什么必須首先鏈接它?
它是否stdio.h只包含這些函式的定義,并且編譯器會為我們呼叫的函式找到已編譯的可執行目標檔案,例如printf()。
我在幾個地方讀到過這個,但還是不太清楚。
uj5u.com熱心網友回復:
像 stdio.h 這樣的頭檔案通常只包含一個定義函式名稱、引數型別和回傳值的宣告。這足以讓編譯器生成對函式的呼叫,但它不是一個定義。實作該函式的實際代碼將位于庫中(具有類似.aor.o或的擴展名.lib)。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/427868.html
下一篇:如何獲取陣列指標的地址?
