.o檔案就是對象檔案,是可重定向檔案的一種,通常以ELF格式保存,裡面包含了對各個函式的入口標記,描述,當程式要執行時還需要連結(link).連結就是把多個.o檔案鏈成一個執行檔。
在win平台下,用來連結的重定向檔案也可為PE格式的.obj檔案
當多種程式語言希望混合編譯時,就可以通過分別編譯成.o檔案,再連結(link)成執行檔。
![.o檔案](/img/b/039/wZwpmLwEDOzcDM5IzM2EzM1UTM1QDN5MjM5ADMwAjMwUzLyMzL3UzLt92YucmbvRWdo5Cd0FmL0E2LvoDc0RHa.jpg)
![.o檔案](/img/4/f3a/wZwpmLzcTNyIzMwEDN2EzM1UTM1QDN5MjM5ADMwAjMwUzLxQzLxMzLt92YucmbvRWdo5Cd0FmLzE2LvoDc0RHa.jpg)
![.o檔案](/img/9/066/wZwpmL0cDO0QzN0YTM2EzM1UTM1QDN5MjM5ADMwAjMwUzL2EzL3gzLt92YucmbvRWdo5Cd0FmLyE2LvoDc0RHa.jpg)
以 Code::Blocks ,win系統為例,我們每次寫好一段程式,構建並運行以後都會在存儲該程式的資料夾里自動生成一個 *.o 檔案和一個*.exe 檔案,而後者是可以直接運行的(雙擊即可打開)。當我們寫好了一個大的程式的各個部分以後,就可將所有的*.o 檔案連結成一個執行檔。