【c语言】详解c语言#预处理期过程 | 宏定义前言

文章详细阐述了C语言从源代码到.exe可执行文件的完整过程,包括预处理、编译、汇编、链接和执行五个阶段。预处理涉及#include和#define,前者是复制头文件内容,后者实现文本替换。文章还探讨了pragmaonce的作用和宏定义的知识点。
摘要由CSDN通过智能技术生成

c语言系列专栏: c语言之路重点知识整合  

创作不易,本篇文章如果帮助到了你,还请点赞支持一下♡>𖥦<)!! 

主页专栏有更多知识,如有疑问欢迎大家指正讨论,共同进步!

给大家跳段街舞感谢支持!ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ

代码编译到执行的过程:c语言从源码到exe文件的过程

目录

 从源代码到exe

预处理期过程


 从源代码到exe

    1:预处理期(也叫预编译): 在这一阶段,源码中的所有预处理语句得到处理例如:#include语句所包含的文件内容替换掉语句本身,所有已定义的宏被展开。

    2:编译期:编译器对源码进行词法分析、语法分析、优化等操作,最后生成汇编代码。

    3:汇编期:生成机器语言代码,保存在后缀为.o的目标文件中

    4:链接期:经过汇编以后的机器代码还不能直接运行。为了使操作系统能够正确加载可执行文件,文件中必须包含固定格式的信息头,还必须与系统提供的启动代码链接起来才能正常运行,这些工作都是由链接器来完成的。

    5:执行期:执行.EXE文件,得到运行结果

预处理期过程

为了探究预处理期 先进行项目属性设置:

生成解决方案后,源debug文件原来的.obj文件变成了.i文件,使用记事本打开:

预处理的过程:源代码编译之前的环节,包含四次头文件,.i文件中即包含了四次。 

 创建.h文件:

 pragma once作用:预处理 包含(拷贝)一次

预处理期就是将.h文件中的代码拷贝一份到主文件中

就是头文件的包含过程

预编译的指令需要使用#号,define也是#号,#include和#define有什么区别呢?

#include相当于复制粘贴的过程

#define相当于查找替换过程

他们都是预处理期的操作,然后再进行编译。

#define宏定义知识点:c语言宏定义知识点详解

大家的点赞、收藏、关注将是我更新的最大动力!欢迎留言或私信建议或问题。
大家的支持和反馈对我来说意义重大,我会继续不断努力提供有价值的内容!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天喜Studio

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值