益友软件工作室

加密金刚锁相关技术 → C语言类技术文章 → 构造自己的C语言函数库

构造自己的C语言函数库

文章作者:谷劲松

虽然Turbo C提供了非常丰富的库函数,但为了完成某些特定功能,我们仍需编制自己的函数。这些函数的使用率有时与库函数一样频繁。但是,对这些函数每次编程时都需重新录入、重新编译,影响了程序开发的效率。能不能把我们自己编制的一些常用函数也象库函数一样加入到一个自定义的库中,供以后调用呢?

答案是肯定的。Turbo C提供的库管理程序TLIB.EXE可以建立包含有自己编写的函数的库。(库文件扩展名为.LIB)TLIB.EXE的命令行格式为:TLIB <操作符>模块名

这些操作符有:

操作符 功能

+ 增加模块到指定的库中

- 从指定的库中消去模块

* 从指定的库中抽取出一个.OBJ文件

-+或+- 用新拷贝替换指定的模块

-*或*- 取出指定的模块,并把该模块从库中消除掉

这里的模块指的是:由一个或若干个用户函数构成的C程序,经编译形成的.OBJ文件。若要构造一个自己的函数库,应遵循以下步骤:

1.模块的建立

首先建立包含要放到库中的函数的C源程序,例如:建立FUNC.C,内容如下

-max(int x,int y)

{

return(x>y?x:y);

}

-min(int x,int y)

{

return(x<y?x:y)

}

编译以上程序,命令行方式为:TCC-C FUNC.C,若在集成环境下,选择“Compile”菜单中的“Compile to OBJ”选项,生成FUNC.OBJ目标文件。

2.加入模块到自己的库中

若要建立一个库,只要给出一个不存在的库名,并将一个或若干个模块加入其中即可。例如:TLIB MYLIB.LIB+FUNC.OBJ,执行此命令行,将生成函数库MYLIB。拷贝这个库文件到C:\TC\LIB目录中。

3.使用自己的库中的函数

例如:有一程序DEMO.C,内容为:

void main()

{

int m,n;

scanf("%d,%d",&m,&n);

printf("\nmax=%d,min=%d",-max(m,n),-min(m,n));

getch();

}

之后,我们编译DEMO.C。命令行方式为:TCC DEMO MYLIB.LIB,若在集成环境下,还应建立一个库工程文件(Project),本例的工程文件(假设为DEMO.PRJ)中必须包含下面一行:

DEMO MYLIB.LIB

并且选择“Project”菜单中的“Project name”,选中DEMO.PRJ文件,按F9键,即可创建

DMEO.EXE文件。

最后说明一点:随着自定义函数的增多,你的库将会越来越大,这时,一定要做好库的管理工作,比如删去无用的模块,登记每个函数的类型、调用参数等,为以后的使用、维护提供方便。

(辽宁 谷劲松)

特别申明

本栏目的文章都是本人从网上搜集而来,仅供大家学习研究之用,请不要用于商业目的!其中署名“佚名”的,意思是作者不详。如果某些文章未署你的名字,请来信告知,我会补上的。如果你认为某些文章侵犯了你的正当权宜,也请来信,我会将它删除。