如何将多个C语⾔模块合成⼀个程序
⼀般来说,我们编制的C语⾔源程序都是放在⼀个扩展名为.C的⽂件中,这对⼀个较简单的程序是合适的,但对于⼤型项⽬就不合适了,其⼀,⼤项⽬往往由多⼈合作完成,⼤家都来
操作同⼀个⽂件极易出错;其⼆,⼤⽂件的编译、调试都极为复杂;其三,如果两个程序中都要⽤到同⼀个⾃定义的函数,此函数须从⼀⽂件移动到另⼀⽂件中,这种移动容易出错。为了解决这⼀⽭盾,⼀个⼤的程序往往被分成⼏个部分,存放在不同的DOS⽂件各。
各个部分可以分开编辑、编译,最后再把这⼏部分链接成⼀个完整的程序。
把⼀程序分成⼏部分是有⼀定规则的。⼀个函数就不能分开在两个⽂件中,也不能在两个⽂件中都对其定义⼀次,因此每个⽂件都是由完整的对函数式变量的定义式说明组成的。对于某⼀⽂件中的函数,它可以直接引⽤本⽂件中所定义的函数和外部变量。
如果要想引⽤别的⽂件中定义的函数或变量,则应在引⽤之前⽤extern,对此变量或函数进⾏说明。如果⼀个函数或外部变量在定义时前⾯加有static说明,那么就只有本⽂件内的函数能够使⽤它。习惯上,在每个⽂件的最前⾯放上不在此⽂件中的函数及变量的说明,由于对函数和变量的说明可以多次重复进⾏,往往建⽴⼀个头⽂件,在其中放⼊所有外部变量和外部函数的说明并在每个说明前⾯加上extern,然后每个源⽂件的第⼀⾏都⽤include包含这个头⽂件。
对于每⼀个完整的源⽂件,都应该能够单独通过编译,以便迅速改正其中的编辑错误。Turbo c中,如果你选择了编译命令,它就编译当前编辑窗⼝中的⽂件。对于被调⽤函数,可以编出简单的调⽤函数对其可靠性进⾏测试,看它能不能完成预期的功能。
在每⼀个⽂件都编好并且都通过了编译之后,你需要建⽴⼀个项⽬⽂件,把所有的⽂件组合在⼀起进⾏链接。如果你使⽤的是Borland c++ 2.0以上的版本或MS C的⾼版本的话,可以看到其主菜单上有⼀个Project(项⽬)菜单,其中⼀项为建⽴Project⽂件,选此命令,输⼊项⽬⽂件名后即可直接从列出的⽬录中选定组成项⽬的⽂件。
但在Turbo C 2.0中,这个过程要复杂⼀些,下⾯我们来看⼀个例⼦。
假设有⼀个程序,其中包含有main(),fun1(),fun2()三个函数及⼀个公⽤的外部变量int a:我们把main()及a的定义放在⽂件F1.C中,⽽将fun1(),及fun2()的定义放在⽂件F2.C中,
即F1.Cextern void fun1(int x);
extern void fun2(char c);
int a;main()
{
fun1(5);
}
一个完整的c语言程序fun2(‘A’)
F2.C
extern int a;
void fun1(int x);
{
…a=a+x…
}
void fun2(char c)
{
…
}
先应把F1.C和F2.C分别输⼊计算机并编译后存盘。然后选File菜单下NEW命令,建⽴⼀个新的⽂件,即项⽬⽂件,不妨取名为MY.PRJ,其中只有两⾏:
F1.CF2.C必要时,还应在⽂件名前加上盘符和路径,存盘。然后打开Project菜单,选Project name.输⼊名字MY.PRT。这时Turbo.C就知道当前要链接,运⾏的是⼀个由两个⽂件组的程序。选择RUN菜单下的RUN命令即可对两个⽂件进⾏编译、链接和运⾏的⼀体化操作。F4,F7,F8及断点设置等功能也可⽤于程序的调试中。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论