http://54min.com/post/gcc-and-gpp.html
gcc和g++的区别
gcc和g++的区别
首先GCC表示GNU Compiler Collections
,gcc
则表示编译器。g++
指GNU C++也是GCC的一部分。
gcc和g++背后都是运行gcc
命令行下输入gcc
或g++
,背后都是运行gcc
编译器对源代码进行编译和各种处理;因此这两个命令其实是一样的,只是对gcc编译器的默认配置选项不同而已。
gcc和g++的不同配置体现在:
g++
对.c
和.cpp
文件都当做C++源代码;而gcc
把.c
文件看做C源代码,.cpp
看做是C++源代码;g++
在链接步骤会自动和C++标准库libstdc++
链接;而如使用gcc
编译连接.cpp
的C++程序,它不会自动链接C++标准库,需要指定选项完成,如:gcc -lstdc++ test.cpp
。因此对于同一个C++源程序test.cpp
,使用g++为g++ test.cpp
,使用gcc则需要gcc -lstdc++ test.cpp
因此:对于C源代码建议使用gcc进行编译,因为默认的配置更适合C语言;对于C++源代码,建议使用g++进行编译。
gcc和g++的区别
首先GCC表示GNU Compiler Collections
,gcc
则表示编译器。g++
指GNU C++也是GCC的一部分。
gcc和g++背后都是运行gcc
命令行下输入gcc
或g++
,背后都是运行gcc
编译器对源代码进行编译和各种处理;因此这两个命令其实是一样的,只是对gcc编译器的默认配置选项不同而已。
gcc和g++的不同配置体现在:
g++
对.c
和.cpp
文件都当做C++源代码;而gcc
把.c
文件看做C源代码,.cpp
看做是C++源代码;g++
在链接步骤会自动和C++标准库libstdc++
链接;而如使用gcc
编译连接.cpp
的C++程序,它不会自动链接C++标准库,需要指定选项完成,如:gcc -lstdc++ test.cpp
。因此对于同一个C++源程序test.cpp
,使用g++为g++ test.cpp
,使用gcc则需要gcc -lstdc++ test.cpp
因此:对于C源代码建议使用gcc进行编译,因为默认的配置更适合C语言;对于C++源代码,建议使用g++进行编译。