C语言编译过程分成四个步骤

C语言编译过程分成四个步骤:
1,由.c文件到.i文件,这个过程叫预处理
2,由.i文件到.s文件,这个过程叫编译
3,由.s文件到.o文件,这个过程叫汇编
4,由.o文件到可执行文件,这个过程叫链接

用gcc查看预处理过程(假设源文件叫hello.c)
gcc -o hello.i hello.c -E
然后用 vi hello.i 即可查看生成的预处理文件

按ESC 输入:$ 跳到预处理文件 可看到hello.c源码

宏的本质:预处理阶段的单纯的字符串替换

预处理阶段,不考虑C语法

宏的使用:
1,用于常量,数组的大小

  • 12
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C语言编译过程是将C语言代码转化为可以在计算机上执行的可执行文件的过程。这个过程包括了预处理、编译、汇编和链接四个主要步骤。 首先是预处理阶段,预处理器负责对源代码进行处理,将所有的宏定义、条件编译指令、头文件包含等处理为实际的C代码。预处理器会将处理后的文件保存为.i文件。 接下来是编译阶段,编译器会将预处理后的代码翻译成汇编代码,该代码使用一种特定的汇编语言表示。编译器会对代码进行语法检查、语义分析、优化等处理,并生成汇编代码编译器将处理后的代码保存为.s文件。 然后是汇编阶段,在这个阶段,汇编器将汇编代码转化为机器码指令,这些指令可以被计算机直接执行。汇编器将处理后的代码保存为.o文件。 最后是链接阶段,链接器将多个目标文件(.o文件)和库文件进行合并,生成最终的可执行文件。链接器会解析并处理数据和函数引用,将它们与实际的定义进行链接。同时,链接器还会进行地址重定位、符号解析等操作,确保连接的正确性和可执行文件的完整性。 总结起来,C语言编译过程包括预处理、编译、汇编和链接四个步骤,分别将源代码转化为预处理后的代码、汇编代码和机器码,并最终生成可执行文件。每个阶段都有特定的处理任务和输出文件,形成了完整的编译过程

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值