c++编译器编译过程
来源:互联网 发布:威尔数据怎么样 编辑:程序博客网 时间:2024/05/01 07:13
编译过程
编译过程分为四步:预处理、编译、汇编、连接
1. 预处理
预处理主要处理源文件中的“#include”、“#define”等预处理等命令
预处理主要完成的工作有(参考:《程序员的自我修养》):
(1) 删除 #define,展开宏
(2) 处理条件编译指令。预处理程序先判断条件,再根据条件修改源代码
(3) 删除注释
(4) 添加行号,以及文件名标识。便于调试
(5) 删除“#include”,插入相应的头文件
使用gcc -E main.c -o main.i 命令,预处理后得到main.i 文件
2. 编译
生成汇编代码的过程。
使用gcc -S main.i -o main.s 命令,编译后得到main.s 文件
3. 汇编
将汇编代码转化成 机器指令。
使用gcc -c main.c -o main.o 命令,得到目标文件main.o
4. 连接
通过连接库文件,将目标文件转化成可执行文件。
使用命令 gcc -ld
一般情况下,我们直接使用gcc main.c -o main就可以生成可执行程序了。
当然,在Windows下使用gcc时,生成的可执行文件不再是main.out ,而是main.exe文件
0 0
- C语言的编译器及编译过程
- 编译器编译过程详解
- GCC编译器编译过程
- 编译器编译过程详解
- c++编译器编译过程
- g++编译器编译过程
- 编译器编译过程
- c语言学习笔记(10)编译器编译过程分析
- 解释器vs编译器 && C,java,python编译过程对比
- 【C 语言】编译过程 分析 ( 预处理 | 编译 | 汇编 | 链接 | 宏定义 | 条件编译 | 编译器指示字 )
- 编译器的编译模板过程
- 编译器的编译基本过程
- 编译器的编译基本过程
- 编译器的编译基本过程
- 编译器的编译基本过程
- JVM编译器的编译过程
- 【编译原理】编译器的编译基本过程
- C语言编译过程中编译器都干了些什么?
- java按位取反
- Python学习笔记一:列表和元组
- Python文档生成工具pydoc使用介绍
- 160307小记
- WideCharToMuliByte函数的使用
- c++编译器编译过程
- 突然想起MySql乱码问题
- subString 截取“,”前面,或者后面的字符串
- 文章标题
- 蓝牙的配对和连接的建立过程
- 上传App报错 Your binary is not optimised for iPhone5
- CentOS7.1 KVM虚拟化之环境准备(1)
- datagrid的列标题怎么做修改
- 同一进程不同线程之间的资源共享与独享