Chinaunix首页 | 论坛 | 博客
  • 博客访问: 830324
  • 博文数量: 85
  • 博客积分: 10016
  • 博客等级: 上将
  • 技术积分: 952
  • 用 户 组: 普通用户
  • 注册时间: 2006-11-19 22:52
文章分类

全部博文(85)

文章存档

2011年(1)

2008年(1)

2007年(60)

2006年(23)

我的朋友

分类: C/C++

2007-10-20 14:55:26

[旧blog文章搬移]

Ø       环境

包括翻译环境(translation environment执行环境(execution environment。前者是将源代码转换为可执行的机器指令的环境;后者用于实际执行代码。两种环境不必在同一个软硬件平台上,例如交叉编译(cross-compile)。

1.翻译过程:

上图表示了编译的基本过程,事实上,编译器还会用预处理器(preprocessor)来处理源代码,在源代码上执行一些文本操作如用实际值代替由#define定义的符号,读入#include包含的头文件等等。此外,如果在编译时加入优化选项,优化器(optimizer)还会对目标代码按一定规则进行优化处理,使它效率更高。

2.执行

程序载入内存并开始执行,大多数机器里,程序将使用一个运行时堆栈(stack),用于存储函数的局部变量和返回地址。

程序正常终止就是main函数返回,或是有些程序执行了exit


 

阅读(1496) | 评论(0) | 转发(0) |
0

上一篇:第一章 快速上手

下一篇:第三章 数据

给主人留下些什么吧!~~