gcc和g++的区别

来源:互联网 发布:windows恶意删除工具 编辑:程序博客网 时间:2024/05/23 10:41

一、区别
1. gcc是GCC中的c编译器
g++是GCC中的c++编译器
2. 对于后缀为.c的文件,gcc当成c文件处理,而g++当成c++处理
对于后缀为.cpp的文件,两者都当成.cpp文件处理
3. 在编译阶段,g++会自动链接STL库,而gcc必须要加一个参数-lstdc++
4. gcc在编译c文件时,可用的预定义宏是比较少的
二、小误区
1.gcc只能用来编译.c文件,g++只能用来编译.cpp文件
答:两者都可以。对于后缀为.c的文件,gcc当成c文件处理,而g++当成c++处理
对于后缀为.cpp的文件,两者都当成.cpp文件处理
2.编译只能用gcc,链接只能用g++
答:不对。gcc和g++都能用在编译阶段,g++用在链接阶段,g++在编译阶段要加上一个参数-lstdc++.
3.gcc不会定义-cplusplus宏,而g++会
答:错误。这个宏只是标志着编译器把代码按c还是c++语法解释。