C++从头开始1(小白进)

IDE是什么?

这个就是IDE(集成开发环境):主要目的就是为开发人员省时间。

首先创建一个项目:

这些就不多说了。

创建好项目后要对程序进行编译和链接。通常IDE提供了多个菜单项。

一般一个项目要想成功运行分为4步:

预处理-编译-汇编-链接

1.预处理(preprocess):

编译前的一些准备工作,预编译把一些#define的宏定义完成文本替换然后将#include的文件里的内容复制到.cpp文件里如果.h文件里还有.h文件,就递归展开。

处理完之后就从.cpp文件变成了.i文件

2.编译(compile):

把我们写的代码转为汇编代码,他的工作是检车词法和语法,如果我们的程序没有词法和语法问题,他就不会报错,不管逻辑对不对,他都不报错(其实现在没啥软件会对我们编写的程序的逻辑是否正确进行报错)。

编译不是把源程序文件直接转换到计算机可以直接运行的二进制程序。而是转化为特定的汇编代码的过程。

处理完之后.i文件就成了.s文件

3.汇编(assemble)

将特定的汇编代码转换成机器码。

这一步生成的文件叫目标文件。

处理完之后.s文件就成了.o文件

4.链接(Link)

.o文件并不是最终可以执行的二进制文件。他仍然是一种中间文件或称临时文件。目标文件仍需要经过链接才能变成可执行的文件。

既然目标文件和可执行文件的格式是一样的(都是二进制格式),为什么还要再链接一次呢?
因为编译只是将我们自己写的代码变成了二进制形式,它还需要和系统组件(比如标准库、动态链接库等)结合起来,这些组件都是程序运行所必须的
链接(Link)其实就是一个“打包”的过程,它将所有二进制形式的目标文件(.o)和系统组件组合成一个可执行文件。完成链接的过程也需要一个特殊的软件,叫做链接器(Linker)
此外需要注意的是:C++程序编译的时候其实只识别.cpp文件,每个cpp文件都会分别编译一次,生成一个.o文件。这个时候,链接器除了将目标文件和系统组件组合起来,还需要将编译器生成的多个.o或者.obj文件组合起来生成最终的可执行文件(Executable file)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值