GNU 英文缩写,是指它不是UNIX的一个操作系统
GCC 英文缩写,意思是GNU的编译器集合
gcc c语言编译器,但是也可以编译c++语言,在链接标准库需要命令行需要添加 -lstdc++
g++ c++语言编译器,也可以编译c语言,在编译c语言的时候会自动调用gcc。
简单来说,gcc和g++本质都是驱动器,根据参数重要编译的文件类型来调用相应的GUN编译器。
编译的顺序
1.预处理 处理宏定义宏命令 .c文件-->.i文件
2.编译 将文件编译成汇编文件 .i文件-->.s文件
3.汇编 将汇编文件变成可执行的二进制文件 .s文件-->.o文件
4.链接 将函数库中相应的代码组合到目标文件中,汇编文件和系统库文件链接起来,生成在特定平台可执行的程序。 比如生成.exe文件