编译四大步
1.预处理 -E 生成.i: #define #include #if #if endif
(1)替换宏,进行宏处理
(2)将注释干掉
(3)头文件展开,将头文件的代码都写入
(4)条件编译处理
2.编译(此编译非彼编译)-S 生成.s 汇编文件:
将C语言翻译成汇编语言
3.汇编 -c 生成.o 目标文件:
将汇编语言翻译成机器语言
即电脑可以直接看的懂的二进制语言
4.链接 生成.out(可执行文件):
将多个.o合成一个.out
很多函数,每一个函数即为一个代码段
每个代码段都赋予一个运行地址 或链接地址(将来在内存中的地址)