第二章 编译和链接
1. 预处理、编译、汇编和链接
比如source code and Header files----预处理----》preprocessed(.i文件)------编译------》assembly(.s文件)--------汇编--------》object file(.o文件)------and static/dynamic library-----链接------》executable(.out文件)
2. 预编译的主要处理规则
将所有的"#define"删除,并且展开所有的宏定义
处理所有条件预编译指令
处理"#include",将包含的文件插入到该预编译指令的位置。注意,这个过程是递归进行
删除所有注释
添加行号和文件名标识,以便于调试和编译产生的错误和警告
保留所有"#pragma"指令,编译器需要使用它们
3. 目标代码的地址还没确定怎么办?连接器的作用。
静态链接——模块拼装
链接过程:地址和空间的分配、符号决议(静态的)、重定位
本文详细介绍了软件开发中从源代码到可执行文件的过程,包括预处理、编译、汇编和链接等步骤。重点解释了预编译的处理规则及链接器在目标代码地址确定中的作用。
408

被折叠的 条评论
为什么被折叠?



