C语言目标代码文件和可执行文件区别

首先介绍的是源代码文件,你自己编写的程序内容会被存入文本文件当中,这个文本文件就被称为源代码文件,通常源代码文件会以 .c 为结尾,例如world.c就可以表示为一个源代码文件名称,其中world被称为基本名,后面的.c被称为扩展名,它俩在一起组合成为文件名,不同的计算机系统对文件名可能会有不同的要求,例如有的UNIX系统限制不超过14个字符(包括扩展名),有UNIX允许255个字符,现在Linux和Windows, Mac操作系统都允许长文名

c语言编程的策略是把源代码文件转变成为可执行文件,包括可以直接运行的机器语言代码。一般c语言实现是通过编译链接两个步骤,编译就是通过编译器把源代码文件翻译成中间文件,最普遍的一种形式就是把源代码转换成为机器语言代码,并把机器语言代码存储在目标代码文件中,那是不是这样就可以让计算机执行这段机器代码了呢?还不行!因为还缺少启动代码,启动代码相当于程序和操作系统之间的接口,例如Windows系统和Linux系统的启动代码不相同。 除了目标代码文件还缺少库函数,几乎所有的c程序都要用到标准库函数,例如printf()函数就在标准库函数中,目标代码文件中没有库函数代码,只有执行函数的指令。链接就是链接器把目标代码文件,启动代码,库函数代码集成在一起形成可执行文件,由机器语言组成的可执行文件就可以被计算机运行了。


版权声明:本文为weixin_43294985原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/weixin_43294985/article/details/103690643