1 GCC
1.1 什么是 GCC
- GCC 原名为 GNU C语言编译器(GNU C Compiler)
- GCC(GNU Compiler Collection,GNU编译器套件)可以编译 C、C++、Java、Go等语言
- Linux系统安装命令
sudo apt install gcc g++, Windows下安装 - 查看版本
gcc/g++ -v/--version
1.2 GCC的工作流程

- 预处理的过程包括:头文件展开、宏替换、删除注释等。
1.3 gcc 和 g++ 的区别
| 编译器如何处理 | gcc | g++ |
|---|---|---|
| .c 文件 | 按 C 程序 | 按 C++ |
| .cpp 文件 | 按 C++ | 按 C++ |
gcc main.cpp -o main -lstdc++等价于g++ main.cpp -o maing++编译时自动链接了C++标准库,内部还是调用的gcc- 习惯上用
gcc编译 C 程序,g++编译 C++ 程序
1.4 GCC 常用参数选项
| GCC 编译选项 | 说明 |
|---|---|
| -E | 预处理指定的源文件,不进行编译 |
| -S | 编译指定的源文件,不进行汇编 |
| -c | 汇编指定的源文件,不进行链接 |
| -o | 将一至多个源文件链接成可执行文件 |
| -I [大写 i] | 指定 include 包含文件的搜索目录 |
| -l [library] | 在程序编译的时候,指定使用的库 |
| -L | 指定编译时搜索库的路径 |
| -fpic/fPIC | 生成与位置无关的代码(lib*.so) |
| -std | 如:-std=c99,gcc默认标准是GNU C |
| -On | n范围:0~3,编译器优化选项的4个级别 |
| -Wall | 生成所有警告信息 |
| -g | 在编译的时候,生成调试信息 |
| -D | 在程序编译的时候,指定一个宏 |
| -w | 不生成任何警告信息 |

GCC,全称GNU Compiler Collection,不仅支持C、C++,还涵盖Java、Go等多种语言。在Linux中,使用`sudo apt install gcc g++`进行安装。GCC工作流程包括预处理、编译、汇编和链接四个步骤。gcc和g++的主要区别在于处理.C和.CPP文件的方式,以及默认链接库。预处理阶段处理头文件和宏,编译生成汇编代码,汇编成目标文件,最后链接形成可执行程序。常用的GCC参数如-E仅预处理,-S生成汇编,-c生成目标文件,-o指定输出,-I指定包含文件路径,-l和-L用于链接库。习惯上,使用gcc编译C程序,g++编译C++程序,并自动链接C++标准库。
888

被折叠的 条评论
为什么被折叠?



