
C语言源代码文件一般扩展名为c,目标文件扩展名一般为obj,生成的可执行文件扩展名一般为exe。
不同平台的C源代码扩展名都为c,但目标文件扩展名不同,例如: 在Linux平台上,生成的可执行文件一般扩展为out。
源文件:这是指由源程序和数据构成的文件。通常由终端或输入设备输入的源程序和数据所形成的文件都属于源文件。它通常是由 ASCII 码或汉字所组成的。
目标文件:这是指把源程序经过相应语言的编译程序编译过,但尚未经过链接程序链接的目标代码所构成的文件。它属于二进制文件。
可执行文件:这是指把编译后所产生的目标代码再经过链接程序链接后所形成的文件。
扩展资料:
源文件,目标文件,可执行文件的联系:
源文件就是用汇编语言或高级语言写出来的代码保存为文件,目标文件是指源文件经过编译程序产生的能被cpu直接识别二进制文件。将目标文件链接起来就成了可执行文件。
源代码与源文件:
源代码(也称源程序)是指未编译的按照一定的程序设计语言规范书写的文本文件,是一系列人类可读的计算机语言指令。 在现代程序语言中,源代码可以是以书籍或者磁带的形式出现,但最为常用的格式是文本文件,这种典型格式的目的是为了编译出计算机程序。
计算机源代码的最终目的是将人类可读的文本翻译成为计算机可以执行的二进制指令,这种过程叫做编译,通过编译器完成。在大多数情况下,源代码等于源文件。
参考资料来源:百度百科-源文件
本题正确答案应为B选项。
C选项为错误答案。
原因如下:
1、编译程序仅仅是将源语言编写的源程序转换为目标程序。
2、编译是把高级语言变成计算机可以识别的2进制语言。
3、编译程序把一个源程序翻译成目标程序的工作过程分为五个阶段:词法分析;语法分析;语义检查和中间代码生成;代码优化;目标代码生成。
显然,编译的过程中并没有运行程序输出结果的步骤,编译的结果是生成目标文件(代码)。
因此C选项为错误答案,B选项为正确答案。
编译原理图如下:
扩展资料:
目标代码(目标文件)生成是编译的最后一个阶段。目标代码生成器把语法分析后或优化后的中间代码变换成目标代码。目标代码有三种形式:
1、 可以立即执行的机器语言代码,所有地址都重定位;
2、待装配的机器语言模块,当需要执行时,由连接装入程序把它们和某些运行程序连接起来,转换成能执行的机器语言代码;
3、汇编语言代码,须经过汇编程序汇编后,成为可执行的机器语言代码。
目标代码生成阶段应考虑直接影响到目标代码速度的三个问题:一是如何生成较短的目标代码;二是如何充分利用计算机中的寄存器,减少目标代码访问存储单元的次数;三是如何充分利用计算机指令系统的特点,以提高目标代码的质量。
参考资料:
编译_百度百科
根据平台不同,扩展名也有所不同:
1、源程序。
在各个平台上,C语言的源程序扩展名都是相同的,即c。 比如testc等。
C++的源程序则是cpp。
2、目标文件。
目标文件是源程序经过编译生成的文件,平台不同,编译工具不同生成的目标文件扩展名也不同。 在windows上比较常见的为obj, 在Linux下比较常见的为o。另外还有一些比较少见的扩展名,如oo, tco等。
3、可执行文件。
可执行文件是目标文件经过链接后,产生的用于运行的文件。
在windows下可执行文件扩展名为exe。
在Linux下可执行文件没有固定的扩展名,在编译时默认为out,但实际上可以是任意扩展名甚至没有扩展名,只要有执行权限即可。
由C++源程序文件编译而成的目标文件的默认扩展名为:obj。
在VC60集成开发环境下,用户可以使用编译(compile)命令将一个cpp为扩展名的C++源程序文件转换成一个以obj为扩展名的目标文件。
编译,编译程序读取源程序(字符流),对之进行词法和语法的分析,将高级语言指令转换为功能等效的汇编代码,再由汇编程序转换为机器语言,并且按照 *** 作系统对可执行文件格式的要求链接生成可执行程序。
扩展资料
源代码-->预处理-->编译-->优化-->汇编-->链接-->可执行文件
编译过程就是把预处理完的文件进行一系列的词法分析,语法分析,语义分析及优化后生成相应的汇编代码。
现在版本的GCC把预处理和编译两个步骤合成一个步骤,用cc1工具来完成。gcc其实是后台程序的一些包装,根据不同参数去调用其他的实际处理程序,比如:预编译编译程序cc1、汇编器as、连接器。
编译器在编译时是以c/c++文件为单位进行的, 如果项目中没有c/c++文件,那么你的项目将无法编译。
经过预编译得到的输出文件中,将只有常量。如数字、字符串、变量的定义,以及C语言的关键字,如main,if,else,for,while,{,},+,-,,\,等等。编译程序所要作得工作就是通过词法分析和语法分析,在确认所有的指令都符合语法规则之后,将其翻译成等价的中间代码表示或汇编代码。
以上就是关于C语言中的源程序文件和目标文件的扩展名分别是全部的内容,包括:C语言中的源程序文件和目标文件的扩展名分别是、用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将、c语言源程序文件,目标文件,和可执行文件的扩展名是什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)