欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

C语言使用VS2017来封装动态库并使用动态库流程!

程序员文章站 2024-03-16 11:07:22
...
  1. 创建项目时选择动态链接库
    C语言使用VS2017来封装动态库并使用动态库流程!
  2. 编写要封装动态库的头文件和实现.c文件(这里封装一个简单数组排序功能做例子)
    头文件:
#pragma once

#ifdef SORT_ARR  //通过对宏定义的判断来使得头文件具有导出使调用导出函数,导入时调用导入函数
#else
#define SORT_ARR __declspec(dllimport)   //导入动态库需要用到的函数
#endif

SORT_ARR void sort_arr(int arr[],int len);

.c实现文件:

#define SORT_ARR __declspec(dllexport)  //在包含头文件前宏定义导出函数
#include "sort_arr.h"

void sort_arr(int arr[], int len) {
	for (int i = 0; i < len; i++) {
		for (int j = 0; j < len - i - 1; j++) {
			if (arr[j] > arr[j + 1]) {
				int temp = arr[j];
				arr[j] = arr[j + 1];
				arr[j + 1] = temp;
			}
		}
	}
}

C语言使用VS2017来封装动态库并使用动态库流程!
3. 在工程项目DEBUG文件夹下提取文件(sort_arr.h和DLL02.dll和DLL02.lib)

C语言使用VS2017来封装动态库并使用动态库流程!
C语言使用VS2017来封装动态库并使用动态库流程!
4. 将文件移动至你所要用这个动态库的项目路径下(和.c文件同一目录即可)
C语言使用VS2017来封装动态库并使用动态库流程!

  1. 将其添加至项目中去再运行项目即可使用
    C语言使用VS2017来封装动态库并使用动态库流程!
    测试代码如下:
    C语言使用VS2017来封装动态库并使用动态库流程!
    C语言使用VS2017来封装动态库并使用动态库流程!