2026年7月5日 星期日

gcc V.S. g++ (Compile in Linux)

 

GCC  V.S. gcc V.S. g++

GCC: 一整套由 GNU 開發的編譯器套装(GNU Compiler Collection),能編譯 C、C++、Fortran 等多種語言

gcc: GCC中的GUN C Compiler

g++: GCC中的GUN C++ Compiler


gcc調用C compiler,而g++調用C++ compiler


gcc和g++的主要區別

1.  對於*.c和*.cpp文件,gcc分別當做c和cpp文件編譯(c和cpp的語法強度是不一樣的)

2.  對於*.c和*.cpp文件,g++則統一當cpp檔編譯

3.  使用g++編譯檔案時,g++會自動連結標準函式庫STL,而gcc不會自動連結STL

4.  gcc在編譯C檔時,可使用的預定義巨集是比較少的

5.  gcc在編譯cpp檔時 / g++在編譯c檔和cpp檔時(gcc和g++呼叫的都是cpp檔的編譯器),會加入一些額外的巨集。

6. 在用gcc編譯c++檔時,為了能夠使用STL,需要加參數–lstdc++ ,但這並不代表gcc –lstdc++ 和g++等價,它們的差別不只是這個。




沒有留言:

張貼留言