C程序

C程序到可执行程序的编译链接过程

预处理-->编译-->汇编-->链接
预处理用于将所有的#include头文件以及宏定义替换成其真正的内容
编译指将经过预处理之后的程序转换成特定汇编代码(assembly code)的过程
汇编过程将上一步的汇编代码转换成机器码(machine code),这一步产生的文件叫做目标文件,是二进制格式
链接过程将多个目标文以及所需的库文件(.so等)链接成最终的可执行文件(executable file)

xxx.c    源代码
xxx.i 预处理后的代码
xxx.s 汇编代码
xxx.out 链接器输出
Directive    Meaning
# include    包括一个源文件
# define    定义宏
# undef    取消定义一个宏
原文地址:https://www.cnblogs.com/xiaofeifei-wang/p/10531694.html