C/C++程序编译流程(预处理->编译->汇编->链接)

本文详细介绍了C/C++程序的编译过程,包括预处理(宏定义、条件编译、头文件包含等处理)、编译(词法分析、语法分析、生成中间代码)、汇编(将汇编代码转换为机器指令)和链接(解决符号引用,生成可执行文件)。
摘要由CSDN通过智能技术生成

在查阅相关资料后,本文将C/C++程序编译过程总结成四大步骤,分别是编译预处理、编译(优化)、汇编与链接




1.编译预处理

预处理是根据预处理指令重新组装成新的C/C++程序

经过预处理后,会生成一个没有宏定义,没有条件编译指令,没有特殊符号的输出文件,这个文件的含义与原本的文件一致,只是内容上有所不同。

宏定义命令;如#define和typedef

条件编译指令;如#ifdef  #ifndef  #endif

头文件包含指令;如#include

特殊符号;如__LINE__

预处理指令;如#pragma

单行/多行注释;// /**/


对上述的内容,预处理会进行下述处理:

  • 读取C/C++源程序,对其中的伪指令(以#开头的指令)进行处理

    ①将所有的“#define”删除,并且展开所有的宏定义

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值