C++从代码源文件到生成exe可执行文件的过程

您所在的位置:网站首页 vs2022如何导出exe文件 C++从代码源文件到生成exe可执行文件的过程

C++从代码源文件到生成exe可执行文件的过程

2024-07-09 13:51| 来源: 网络整理| 查看: 265

对于C++源文件,从文本到可执行文件一般需要四个过程:

C++代码源文件 ——【预处理】——> 预编译文件 ——【编译】——> 汇编文件/+二进制目标文件.obj文件 ——【汇编】——> 可重定位目标文件 ——【链接】——> 可执行目标文件.exe文件

Windows:

Linux:

【预处理阶段】:对源代码文件中文件包含关系(头文件)、预编译语句(宏定义)进行分析和替换,生成预编译文件🔻。 【编译阶段】:将经过预处理后的预编译文件转换成特定汇编代码,生成汇编文件🔻。根据当前源代码编译成二进制目标文件(即.obj文件) 【汇编阶段】:将编译阶段生成的汇编文件转化成机器码,生成可重定位目标文件🔻。 【链接阶段】:将多个目标文件及所需要的库连接成最终的可执行目标文件。将生成的.obj文件与库文件.lib等文件链接,生成可执行文件(.exe文件)。                          参考链接:http://t.csdnimg.cn/fQrCR

图表参考链接:http://t.csdnimg.cn/8JpvR ,http://t.csdnimg.cn/Eg9wu

一个C++程序从代码文件到生成exe可执行文件的过程共四步:预处理,编译,汇编,链接

1. 预处理:

展开所有头文件,展开宏定义(意味着代码替换),去掉注释,处理所有的条件预编译指令(对#ifend #endif判断)

2. 编译:

将代码转换为汇编代码

3. 汇编:

把汇编语言翻译成机器指令

(代码段:主要包含的是程序的指令,不可写,可读,可执行。

    数据段:存放程序中用到的各种全局变量或者静态数据。可读可写可执行)

4. 链接:

合并各个.obj 文件,合并符号表,解析符号表是否重定义符号地址重定位生成.exe文件

参考文件:http://t.csdnimg.cn/K45iO



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3