7.9.2 多文件程序的的运行
前面已提到一个程序往往由多个文件组成。那么如何把这些文件编译连接成一个可执行文件并运行呢?下面以运行例7-20的程序为例,说明在不同环境下多文件执行的步骤。
1.用Turbo C集成环境
(1)先后输入并编辑4个文件,并分别以文件名filel.c、file2.c、file3.c、file4.c存储在磁盘上。
(2)在编译状态下,建立一个“项目文件”,它不包括任何程序语句,而只包括组成程序的所有的文件名。即:
扩展名.c可以省写。4个文件顺序任意,可以连续写在同一行上,如file3.cfilel.c file2.c file4.c。
如果这些源文件不在当前目录下,应指出路径。
(3)将以上内容存盘,文件名自定,但扩展名必须为.prj(表示为project文件)。今设文件名为a.prj。在Turbo C主菜单中选择Project菜单,按回车键后下拉菜单,找到其中的Project name项并按回车键,屏幕上会出现一个对话框,询问项目文件名。输入项目文件名a.prj即可。
(4)按功能键F9,进行编译连接,系统先后将4个文件翻译成目标文件,并把它们连接成一个可执行文件a.exe(文件名与项目文件相同)。
(5)按Ctrl+F9键,即可运行可执行文件a.exe。
2.在MSC上进行编译连接
先分别对4个文件进行编译,得到4个.obj文件。然后用link把4个目标文件(.obj文件)连接起来。可用以下命令:link filel+file2+file3+file4得到一个可执行的文件filel.exe,然后运行它。
3.用#include命令
将file2.c、file3.c和file4.c包含到filel.c中。在filel.c中的开头加3行:
这样在编译时,系统自动将这3个文件放到main函数的前头,作为一个整体编译,而不是分4个文件编译。此时这些函数被认为是在同一文件中,不再是作为外部函数被其他文件调用了。main函数中原有的extern声明就可以不要。需要注意的是,此时的include命令中文件名应用双引号,而不能用“< >”,除非被包含的文件在lib文件夹下。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。