概述
C++编译过程
编译:把文本形式的源代码翻译成机器语言,并生成目标文件
链接:将目标文件和操作系统的启动代码、库文件组织起来形成可执行文件
1. 编译:i-s-o
1.1 编译预处理(Pre-Processing)
编译器执行预处理指令(#开头),生成.i文件,不再包含#,例如#include, 宏定义#define,条件编译#ifdef等
1.2 编译(Compiling)
通过语法和词法分析,确定所有指令是否符合规则,翻译成汇编代码.s文件
1.3 汇编(Assembling)
把汇编语言翻译成目标机器指令的过程,生成.obj或.o目标文件,目标文件存放的就是与源程序等效的机器语言代码;
目标文件由段组成,通常至少包含两个段:
- 代码段:包含程序指令
- 数据段:存放程序用到的全局变量和静态变量
2.链接:(Lingking)
将目标文件和调用的库链接起来,生成bin文件;
其中有目标文件调用其它目标文件内的内容的情况,也有目标文件调用库的情况;
gcc编译器
GNU Compiler Collection
gcc特点:
- 可移植,多平台支持
- 交叉编译cross-compiler
- 支持多语言前端
- 模块化,可植入新语言和cpu
- 自由软件
最后
以上就是霸气泥猴桃为你收集整理的C++编译的全部内容,希望文章能够帮你解决C++编译所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复