linux上的C C 編譯器gcc egcs詳解

2021-06-04 12:24:41 字數 1758 閱讀 1958

一.執行 gcc/egcs

linux 中最重要的軟體開發工具是 gcc。gcc 是 gnu 的 c 和 c++ 編譯器。實際上,gcc能夠編譯三種語言:c、c++和objectc(c語言的一種物件導向擴充套件)。利用 gcc 命令可同時編譯並連線 c 和 c++ 源程式。

#demo#: hello.c

清單 factorial.c

-----------------------

#include

#include

intfactorial (intn)

-----------------------

清單 main.c

-----------------------

#include

#include

intfactorial (intn);

intmain (intargc,char**argv)

else

return0;

}

-----------------------

利用如下的命令可編譯生成可執行檔案,並執行程式:

$ gcc -o factorial main.c factorial.c

$ ./factorial 5

factorial of 5 is 120.

gcc 可同時用來編譯 c 程式和 c++ 程式。一般來說,c 編譯器通過原始檔的字尾名來判斷是 c 程式還是 c++ 程式。在 linux 中,c 原始檔的字尾名為 .c,而 c++ 原始檔的字尾名為 .c 或 .cpp。

但是,gcc 命令只能編譯 c++ 原始檔,而不能自動和 c++ 程式使用的庫連線。因此,通常使用 g++ 命令來完成 c++ 程式的編譯和連線,該程式會自動呼叫 gcc 實現編譯。

假設我們有乙個如下的 c++ 原始檔(hello.c):

#include

voidmain (void)

則可以如下呼叫 g++ 命令編譯、連線並生成可執行檔案:

$ g++ -o hello hello.c

$ ./hello

hello, world!

二.gcc/egcs 的主要選項

Linux上的C C 編譯器gcc egcs詳解

一.執行 gcc egcs linux 中最重要的軟體開發工具是 gcc。gcc 是 gnu 的 c 和 c 編譯器。實際上,gcc能夠編譯三種語言 c c 和objectc c語言的一種物件導向擴充套件 利用 gcc 命令可同時編譯並連線 c 和 c 源程式。demo hello.c 清單 fac...

Linux上的C C 編譯器gcc egcs詳解

include include int factorial int n 清單 main.c include include int factorial int n int main int argc,char argv else return 0 利用如下的命令可編譯生成可執行檔案,並執行程式 gc...

Linux上的C C 編譯器gcc egcs詳解

一.執行 gcc egcs linux 中最重要的軟體開發工具是 gcc。gcc 是 gnu 的 c 和 c 編譯器。實際上,gcc能夠編譯三種語言 c c 和objectc c語言的一種物件導向擴充套件 利用 gcc 命令可同時編譯並連線 c 和 c 源程式。demo hello.c 清單 fac...