C语言-程序环境和预处理(14.1)

目录

1. 程序的翻译环境和执行环境

2. 详解编译+链接

2.1 翻译环境

2.2 编译本身也分为几个阶段

2.2.1 预编译(预处理)

2.2.2 编译

2.2.3 汇编

2.2.4 链接

2.3 运行环境

写在最后:


C语言-程序环境和预处理(14.1)_第1张图片

 

1. 程序的翻译环境和执行环境

翻译环境:在这个环境中源代码被转换为可执行的机器指令。

执行环境:它用于实际执行代码。

2. 详解编译+链接

2.1 翻译环境

下图是程序编译的过程:

C语言-程序环境和预处理(14.1)_第2张图片

1.源文件通过编译转换成目标文件,

2.链接器将每个目标文件链接,形成一个可执行程序(exe后缀的文件),

3.链接器也引入该程序在C标准库应用的函数,以及程序员自己写的函数。

2.2 编译本身也分为几个阶段

2.2.1 预编译(预处理)

1. #include 头文件的包含,

2. #define 定义符号的替换,

3. 删除注释,

4. 文本操作。

2.2.2 编译

1. 把C语言代码翻译成了汇编代码:

包含:

语法分析

词法分析

语义分析

符号汇总

2.2.3 汇编

将汇编代码翻译成二进制的指令(存放到目标文件)

符号汇总后:形成符号表。

2.2.4 链接

1. 合并段表

2. 符号表的合并和重定位

最后形成可执行程序。

2.3 运行环境

1. 程序必须载入内存中,

如果是有操作系统的环境,工作由操作系统完成,

如果是独立的环境,也必须手工载入。

2. 程序开始,调用 main 函数。

3. 终止程序。正常终止main函数;也有可能是意外终止。

写在最后:

以上就是本篇文章的内容了,感谢你的阅读。

如果喜欢本文的话,欢迎点赞和评论,写下你的见解。

如果想和我一起学习编程,不妨点个关注,我们一起学习,一同成长。

之后我还会输出更多高质量内容,欢迎收看。

你可能感兴趣的:(C语言学习,c语言,开发语言)