GCC,,以前用于“ GNU C編譯器 ”,已經(jīng)不斷發(fā)展,,支持多種語言,,如C(gcc),C ++(g++),,Objective-C,,Objective-C ++,Java(gcj),,F(xiàn)ortran(gfortran),,Ada(gnat),Go(gccgo),,OpenMP,,Cilk Plus和OpenAcc。它現(xiàn)在被稱為“ GNU編譯器集合 ”,。 下面我們來快速看看c/c++中常用的gcc和g++都有哪些不同點,。 1.gcc是GCC中的c編譯器,g++是GCC中的c++編譯器,。
2. 對于后綴為.c的文件,,gcc當成c文件處理,而g++當成c++處理,; 對于后綴為.cpp的文件,,兩者都當成.cpp文件處理。
gcc和g++都可以正常編譯*.c文件 3. 在編譯階段,g++會自動鏈接STL標準庫,;而gcc不會自動鏈接STL,,必須加-lstdc++編譯參數(shù)。
gcc編譯的c++代碼中使用了STL標準庫時,必須加-lstdc++編譯參數(shù) 4. gcc在編譯c文件時,,可用的預(yù)定義宏是比較少的,。
雖然gcc和g++有一些區(qū)別,,但是對于咱們正常的編碼來說,這兩個編譯器用哪個都可以,,但是對于特殊的編譯參數(shù),,還是需要參考編譯器開發(fā)指南手冊查看細節(jié)再使用的。 演示代碼: test_c.c #include <stdio.h>int main(){printf('Hello, World! \n');return 0;} test_c++.cpp
|
|