上机输入和编译源程序。通过键盘向计算机输入程序,最后将此源程序以文件形式存放在文件夹内,文件用.c作为后缀,生成源程序文件。对源程序进行编译,先用c编译系统提供的“预处理器”对程序中的预处理指令进行编译预处理。例如,对于#include指令来说,就是将stdio.h头文件的内容读进来,取代#include行。由预处理得到的信息与程序其他部分一起组成一个完整的、可以用来正式编译的源程序,然后由编译系统对该源程序进行编译。
编译的作用是对源程序进行检查,判定程序有无语法的错误。直到没有错误时,编译程序自动把源程序转换为二进制形式的目标程序进行连接处理。经过编译后所得到的二进制目标文件还不能供计算机直接执行。一个程序可能包含若干个源程序文件,而一次编译只能得到与一个源程序文件相对应的目标文件,
只是程序的一部分,必须把所有编译后得到的目标文件链接装配起来,再与函数库相连接成一个整体,生成一个可供计算机执行的目标程序,称为可执行程序,即使一个程序只包含一个源文件,编译后得到的目标程序也不能直接运行,也要经过连接阶段,因为要和函数库进行连接,才能生成可执行程序。运行可执行程序,得到运行结果。把f.exe输入计算机,并使之运行,得到结果。
C语言源程序文件扩展名:.c
目标文件扩展名:.obj
可执行文件扩展名:.exe
源程序:程序可以用高级语言或汇编语言编写,用高级语言或汇编语言编写的程序称为源程序。C语言源程序的扩展名为“.c”。源程序不能直接在计算机上执行,需要用“编译程序”将源程序编译为二进制形式的代码。
目标程序:源程序经过“编译程序”编译所得到的二进制代码称为目标程序。目标程序
的扩展名为“.obj”。
目标代码尽管已经是机器指令,但是还不能运行,因为目标程序还没有解决函数调用问题,需要将各个目标程序与库函数连接,才能形成完整的可执行程序。
可执行程序:目标程序与库函数连接,形成的完整的可在 *** 作系统下独立执行的程序
称为可执行程序。可执行程序的扩展名为“.exe“。
扩展资料:
C语言创建程序的步骤:
编辑:就是创建和修改C程序的源代码-我们编写的程序称为源代码。
编译:就是将源代码转换为机器语言。编译器的输出结果成为目标代码,存放它们的文件称为目标文件。扩展名为.o或者.obj。(该部分编译是指汇编器编译汇编语言或者编译器编译高级语言)
链接:链接器将源代码由编译器产生的各种模块组合起来,再从C语言提供的程序库中添加必要的代码模块,将它们组成一个可执行的文件。在windows下扩展名为.exe,Unix下无扩展名。
执行:运行程序。
参考资料:
IT专家网——C语言编程程序编译全过程剖析
以GCC编译器为例,可以分为四步。\x0d\x0a第一步是预处理,包括语法检查等工作。\x0d\x0agcc -P abc.c\x0d\x0a第二步由源程序生产汇编语言代码。\x0d\x0agcc -S abc.c \x0d\x0a会生成abc.s文件,这个文件里就是汇编代码。\x0d\x0a第三步编译器生成目标代码,一个源文件生成一个目标代码。\x0d\x0agcc -c abc.c\x0d\x0a会生成abc.o\x0d\x0a第四步连接器从目标代码生成可执行文件。\x0d\x0agcc abc.o\x0d\x0a\x0d\x0a目标代码包括机器码和符号表(函数及变量名)。连接器的主要作用是通过符号表在库文件和其他模块中找到在目标代码中引入或未定义的符号(函数及变量名),将几个目标代码合成可执行文件。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)