課程
/后端開發
/C
/Linux C語言編程基本原理與實踐
mian.o 和main.out有什么區別?out不可覆蓋那個.o可以覆蓋不?比如:gcc XXXX.c XXX.c .o這個類似的代碼能成立嗎?當然XXXX和XXX是可以執行的
2015-11-16
源自:Linux C語言編程基本原理與實踐 3-1
正在回答
有人知道.out文件和使用-o參數指定的可執行文件之間有什么區別嗎?還是就是一個名字的區別呢?
.o 是編譯器生成的“object文件”(大概叫目標文件)
.out 應該就是可執行文件。
C代碼要經過“編譯”和“鏈接”才能執行,單純地編譯就是生成 .o文件 ,把(單個或多個).o文件(還有各種庫)鏈接起來才能形成可執行文件。
gcc xxx.c ?會將xxx.c編譯鏈接生成一個叫a.out的可執行文件。
gcc xxx.c -o yyy? 會把xxx.c編譯鏈接生成名為yyy的可執行文件, -o 參數可以指定輸出的文件名(不指定就是上面的a.out)
gcc -c xxx.c? 會將xxx.c編譯成xxx.o
gcc xxx.o yyy.o zzz.o? 會把這幾個.o文件鏈接起來形成可執行文件(你也可以直接調用鏈接器ld來鏈接它們)
舉報
本視頻教程介紹C語言基本工作原理以及適用與C的實際開發方式
1 回答| 和 > 有什么區別???
2 回答gcc 和 gcc -c有什么區別呢?
1 回答vim 和 nano 編寫文件有什么區別?
2 回答為什么我的main.out沒有執行權限呢?
2 回答到底和win8下其他軟件編寫有什么區別啊
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-02-10
有人知道.out文件和使用-o參數指定的可執行文件之間有什么區別嗎?還是就是一個名字的區別呢?
2015-11-16
.o 是編譯器生成的“object文件”(大概叫目標文件)
.out 應該就是可執行文件。
C代碼要經過“編譯”和“鏈接”才能執行,單純地編譯就是生成 .o文件 ,把(單個或多個).o文件(還有各種庫)鏈接起來才能形成可執行文件。
gcc xxx.c ?會將xxx.c編譯鏈接生成一個叫a.out的可執行文件。
gcc xxx.c -o yyy? 會把xxx.c編譯鏈接生成名為yyy的可執行文件, -o 參數可以指定輸出的文件名(不指定就是上面的a.out)
gcc -c xxx.c? 會將xxx.c編譯成xxx.o
gcc xxx.o yyy.o zzz.o? 會把這幾個.o文件鏈接起來形成可執行文件(你也可以直接調用鏈接器ld來鏈接它們)