2011-12-16 53 views
3

我有一個非常小的C++程序,它由兩個文件組成:main.cppsomething.cpp。我想在OS X Terminal中使用g++編譯我的程序。以下是我所嘗試的:當我運行g ++時,我需要使用-o嗎?

> g++ main.cpp something.cpp 
> ./a.out 

這是正確的嗎?我遇到過使用-o標誌的例子。我不確定是否有必要。

+2

如果添加-o,比如`g ++ main.cpp something.cpp -o executable`,那麼它將在當前目錄中創建一個名爲* executable *的已編譯可執行文件。如果你省略了-o標誌,g ++會輸出到預設的文件名* a.out * – 2011-12-16 20:04:20

回答

3

-o選項不是必需的。如果沒有指定,默認的行爲是把可執行文件 「的a.out」:在文件file

-o文件 地輸出。這適用於任何類型的輸出,無論是可執行的 文件,目標文件,彙編器 文件還是預處理的C代碼。

如果未指定-o,默認是把一個可執行文件中的a.out,對象文件source.suffix在source.o,其 彙編文件中source.s,一個預編譯 頭文件在source.suffix.gch中,以及標準輸出中的所有預處理C源程序。

所以是的,這是正確的。

4

它工作嗎?這是一個很好的指示正確性! -o標誌允許您指定文件名,以便可執行文件未命名

相關問題