gcc和g++的区别

272 阅读1分钟

标准没有规定源文件的命名,所以把.c和.cpp看作哪一种语言是由编译器自己来实现的。gcc和g++都不是最终的编译器,它们都是编译驱动器,根据编译参数选择对应的编译器。

后缀为.c的源文件,gcc把它当作是c程序,而g++当作是c++程序;后缀为.cpp的,两者都会认为是c++程序。

g++会自动链接c++标准库stl,gcc不会,所以gcc编译c++代码用:gcc -lstdc++ test.cpp -o test。gcc不会定义__cplusplus宏,而g++会。

拓展阅读

编译原理GCC/Clang/LLVM的区别与联系