- 4
- 0
- 约2.4千字
- 约 4页
- 2016-08-23 发布于河南
- 举报
C,Java和C#的编译过程解析
C++, Java和C#的编译过程解析1.1.1 摘要我们知道计算机不能直接理解高级语言,它只能理解机器语言,所以我们必须要把高级语言翻译成机器语言,这样计算机才能执行高级语言编写的程序,在接下来的博文中,我们将介绍非托管和托管语音的编译过程。1.1.2正文非托管环境的编译过程(C/C++)纯C/C++的程序通常运行在一个非托管环境中,类是由头文件(.h)和实现文件(.cpp)组成,每个类形成了一个单独的编译单元,当我们编译程序时,几个基本组件会把我们的源代码翻译成二进制代码,接下来我们通过以下图片说明非托管环境的编译过程:图1 C/C++编译过程首先是预处理器,如果在项目中有头文件和宏表达式,那么它将负责包含头文件和翻译所有的宏观表达式。接下来是编译器,它不是直接生成二进制代码,而是生成汇编代码(.s),这基本上是所有现代的非结构化语言的共同基础。然后,汇编程序把汇编代码翻译成目标代码(.o和.obj文件,机器指令)。最后链接器,它把所有彼此相关的目标文件和生成的可执行文件或库链接起来。总而言之,在一般情况下,我们的代码首先翻译成汇编代码,接着翻译成机器指令(二进制代码)。什么是宏?在C/C++中,宏是预处理指令,它有多种应用技术:包括预定义、创建关键字和条件编译等等。在一般情况下,这些技术在C++中使用被认为是不好的做法,主要原因是有可能滥用C++提供的语法变化功能,甚至有可能
您可能关注的文档
最近下载
- 网屏8300-8600说明书.pdf
- 信息安全-网站云监测-产品解决方案.pdf VIP
- 2019年高端班兼职教辅(口腔)入职测评.docx VIP
- 八年级下册道德与法治全册知识点(2026年春最新版).docx VIP
- 小学科学新教科版三年级下册2.1.不同种类的动物 教学课件(2026春).pptx VIP
- 电力系统调度运行技能考试题库.pdf VIP
- 部编版小学道法三年级下册第5课《从小爱劳动》第2课时教学设计.doc VIP
- 新概念英语第三册 精品课件-Lesson 48 The silent village.pptx VIP
- 《护理用药安全与管理》业务学习试卷.docx VIP
- 高三英语试卷.pdf VIP
原创力文档

文档评论(0)