VC 下建立 C 函数库

      在VC 中new一个名称为libTest的static library工程,并新建lib.h和lib.cpp两个文件,lib.h和lib.cpp的源代码如下:

     //文件:lib.h

    #ifndef LIB_H 
    #define LIB_H 
    extern "C " int add(int x,int y);   //声明为C编译、连接方式的外部函数 
    #endif

    //文件:lib.cpp

    #include "lib.h " 
    int add(int x,int y)
   {
      return x y;
   }

  编译这个工程就得到了一个.lib文件,这个文件就是一个函数库,它提供了add的功能。将头文件和.lib文件提交给用户后,用户就可以直接使用其中的add函数了。

  标准Turbo C2.0中的C库函数(我们用来的scanf、printf、memcpy、strcpy等)就来自这种静态库。

  下面来看看怎么使用这个库,在libTest工程所在的工作区内new一个libCall工程。libCall工程仅包含一个main.cpp文件,它演示了静态链接库的调用方法,其源代码如下:

      #include <stdio.h>
      #include "..\lib.h "
      #pragma comment( lib, "..\\debug\\libTest.lib " )  //指定与静态库一起连接

      int main(int argc, char* argv[])
     {
        printf( "2 3 = %d ", add( 2, 3 ) );
     }

posted @ 2009-04-22 09:34  Kane_BJ  阅读(405)  评论(0编辑  收藏  举报