C语言中编译程序和连接程序的作用和原理是什么关键是原理,越详细越好,谢了~

C语言中编译程序和连接程序的作用和原理是什么关键是原理,越详细越好,谢了~,第1张

编译主要工作是检查一下你的源代码,看看它是否能够读懂,如果可以完全明白,就把你的源代码变成一种计算机更方便处理的文件,通常我们称为目标文件,常用后缀obj 或o,编译的工作就结束了。

链接程序的拿到目标文件后,进行装配工作。因为你设计的程序中,要不是调用自己设计的功能,要不调用系统提供的功能。链接就是把根据你程序说明的调用关系,找到相应的程序,把它们拼接起来,形成可以被 *** 作系统执行的文件,也就是可执行文件。

1、编辑:编写代码,制作C语言的源文件。

2、编译:是由编译程序将C语言源文件转换成二进制中间文件,对文件内部的语法语义做处理,如果编译出错,无法进行后续动作。

3、链接:将编译中生成的中间文件组合成二进制可执知行文件,这一步会对文件之间的关联做检查,如果出错,将不会生成可执行文件,也就无法执行。

4、执行:运行可执行文件,这一步道是编写代码的最终目的。

扩展资料:

DOS命令通常分为三类:内部命令、外部命令和批处理命令。

1、内部命令:

其包含在命令解释程序COMMAND.COM中,一旦启动DOS,这些命令就被调入内存,只要在DOS系统提示符下输入这些命令,就可立即执行。

2、外部命令:

其以文件的形式存储在系统盘上,所带扩展名为COM和EXE。DOS启动时,它们并没有被调入内存,执行前必须从系统盘读进内存。因此输入外部命令时,要了解该命令是否在当前盘上,不然DOS无法找到它们。

3、批处理命令:

实际上是个文件,该文件包含多条命令,当用户键入批处理文件名时,DOS将顺序执行其中的各条命令。注意,批处理命令必须用“.BAT”作为扩展名。

C语言的运算非常灵活,功能十分丰富,运算种类远多于其它程序设计语言。在表达式方面较其它程序语言更为简洁,如自加、自减、逗号运算和三目运算使表达式更为简单。

当多种不同运算组成一个运算表达式,即一个运算式中出现多种运算符时,运算的优先顺序和结合规则就会显得十分重要。

参考资料:

百度百科-运行命令

百度百科-C语言

链接的解释

指在电子 计算 机程序的各 模块 之间 传递参数和 控制 命令,并把它们组成一个可 执行 的整体的过程。

词语分解

链的解释 链 (链) à 用 金属 环节连套而成的索子:链子。链轨(履带)。项链。锁链。链式反应。 计量海洋上距离的长度单位,十分 之一 海里为一链,合米。 部首 :钅; 接的解释 接 ē 连成一体:接合。接骨。接壤。衔接。 继续 ,连续:接力。接替。接班。接二连三。再接再厉。 靠近 ,挨上:接近。邻接。接吻。 承受,收取:接受。接收。接纳。接管。 迎:接风。接生。接待。 姓。 交送

compile和link是大多数语言从原代码生成可执行程序的两个步骤。

之所有有这两个步骤因为几乎任何一个程序都不是用一个原文件写出来的。compile是先针对单独原文件进行处理。link是把compile处理的结果组合成一个完整的可执行文件。

其实C/C++完全也可以一步成型,不需要compile和link两个步骤,但是那样的后果就是:一,每次生成可执行程序,必须翻译全部源代码;二,C语言的执行库(printf, scanf这些)必须都以源代码形式存在。这怎么样也说不过去吧。

另外头文件不属于compile和link过程,头文件是预编译过程的文件。

C/C++语言的完整编译过程是

一、预编译

处理#define #if #include这类#开头的语句,这些称为预编译指令。这个过程中会把h文件和c/cpp文件组合成最终交给compile过程的原文件。这个原文件是不包含任何#开头的语句的。所有#define定义的宏也会被替换。

二、编译

把上面那个原文件编译成o或者VC里是obj文件。这个文件保存了机器码化的函数、函数的描述、全局变量的描述、乃至段的描述等等。

三、连接

把可执行程序需要的所有的编译过程产生的o或者obj文件组合到一起。(这里也包括lib文件,lib文件件本质上就是打包的obj文件集合)。另外连接过程还会组合一些其他数据,比如资源、可执行文件头等等。

以上就是关于C语言中编译程序和连接程序的作用和原理是什么关键是原理,越详细越好,谢了~全部的内容,包括:C语言中编译程序和连接程序的作用和原理是什么关键是原理,越详细越好,谢了~、c语言中的编辑,编译,连接,运行分别是什么意思、链接是什么意思等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10205699.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-06
下一篇2023-05-06

发表评论

登录后才能评论

评论列表(0条)

    保存