动态链接库

Posted zhuh102

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了动态链接库相关的知识,希望对你有一定的参考价值。

一  动态链接库源文件

#include "dongtai.h"


int __stdcall plus(int x,int y){
return x+y;
}
//动态链接库和静态链接库的本质区别是静态链接库在编译的时候由编译器直接编译到.exe文件中
//但是动态链接库不会直接编译到.exe文件中而是在程序需要调用到动态链接库中的函数的时候再
//通过程序在编译时产生的导入表,以及dll文件所产生的导出表来找到需要调用的函数进行调用

 

二  动态链接库头文件

extern "C" _declspec(dllexport) __stdcall int plus(int x,int y);

 

三 测试代码

#include "stdafx.h"


#pragma comment(lib,"Dynamic.lib")

extern "C" _declspec(dllimport) __stdcall int plus(int x,int y);
int main(int argc, char* argv[])
{
int x=plus(2,4);
printf("Hello World!\n%d",x);
return 0;
}

四  还需要将动态链接库工程中编译产生的Debug文件夹下的dll文件和lib文件拷贝到测试工程目录下面

以上是关于动态链接库的主要内容,如果未能解决你的问题,请参考以下文章

mac动态链接库的生成和使用

如何从一个动态链接库DLL中查看接口函数

动态链接库和静态链接库的区别简述

makefile-动态链接库(*.so)

动态链接库和静态链接库

动态链接库