序言
程序编译
- 预处理
- 编译
- 汇编
- 链接
代码准备

#include <stdio.h>
#define M 10
int main()
{
printf("%d\n",M);
return 0;
}

预处理(预编译)
gcc -E test.c -o test.i

作用
- 展开库
- 替换宏

看看,代码一下子变成了800多行,这是库函数的展开,并且我们看到宏M已经被替换成了10,此时仍旧是C语言代码
编译
gcc -S test.i -o test.s

- 将C语言编译成汇编代码

汇编
gcc -c test.s -o test.o

- 将汇编语言变成二进制

链接
拓展
Linux下多文件编译运行









