您的位置:首页 > 编程语言 > C语言/C++

C++源文件到可运行文件的过程

2017-06-15 11:49 113 查看

一.四个步骤   

   对于C/C++编写的程序,从源码到可运行文件,一般经过以下四个步骤: 1).预处理,产生.ii文件 2).编译,产生汇编文件(.s文件) 3).汇编,产生目标文件(.o或.obj文件) 4).链接,产生可运行文件(.out或.exe文件)         以hello.c为例。这个过程能够用以下的图来表示


二.预处理

   预处理主要包括以下的内容: a.对全部的“#define”进行宏展开。 b.处理全部的条件编译指令,比方“#if”,“#ifdef”。“#elif”,“#else”,“#endif” c.处理“#include”指令,这个过程是递归的,也就是说被包括的文件可能还包括其它文件 d.删除全部的凝视“//”和“/**/” e.加入行号和文件标识 f.保留全部的“#pragma”编译器指令     经过预处理后的.ii文件不包括不论什么宏定义,由于全部的宏已经被展开。而且包括的文件也已经被插入到.ii文件里。


三.编译

    编译的过程就是将预处理完的文件进行一系列词法分析,语法分析,语义分析及优化后生成对应的汇编代码文件(.s文件)


四.汇编

    汇编器是将汇编代码转变成机器能够运行的代码,每个汇编语句差点儿都相应一条机器指令。终于产生目标文件(.o或.obj文件)。




五.链接

   链接的过程主要包含了地址和空间分配(Address and Storage Allocation)、符号决议(Symbol Resolution)和重定位(Relocation)


版权全部。欢迎转载,转载请注明出处。谢谢

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: