1. 程式人生 > >gcc後面既有-c又有-o是什麼意思?

gcc後面既有-c又有-o是什麼意思?

-c和-o都是gcc編譯器的可選引數

-c表示只編譯(compile)原始檔但不連結,會把.c或.cc的c源程式編譯成目標檔案,一般是.o檔案。
-o用於指定輸出(out)檔名。不用-o的話,一般會在當前資料夾下生成預設的a.out檔案作為可執行程式。

例如
gcc -c test.c將生成test.o的目標檔案
gcc -o app test.c將生成可執行程式app

gcc -c a.c -o a.o表示把原始檔a.c編譯成指定檔名a.o的中間目標檔案(其實在這裡,你把-o a.o省掉,效果是一樣的,因為中間檔案預設與原始檔同名,只是字尾變化)。