C/C++动态库函数导出 windows

windows上动态库需要指定导出的函数,有两种方式可以采纳

1、通过__declspec

cpp 复制代码
#ifdef _WIN32
#define DLL_EXPORT __declspec(dllexport)
#else
#define DLL_EXPORT
#endif

DLL_EXPORT int read_file(const char *filename);

2、通过.def文件

.h文件

cpp 复制代码
int read_file(const char *filename);

.def文件

cpp 复制代码
LIBRARY Test

EXPORTS
    read_file

.def文件函数别名 可以将内部的函数隐藏改个别的名字导出

cpp 复制代码
LIBRARY Test

EXPORTS
    read=read_file

编译指令:

bash 复制代码
gcc -shared -o Test.dll test.c test.def
相关推荐
晓蛋12 小时前
c语言指的是什么意思
c语言·编译器·编程开发·集成开发环境·程序实例
倒头就睡的小比特12 小时前
算法竞赛C++常用的STL
c++·算法
weilx123412 小时前
C++笔记-文件IO-<fcntl.h>
c++
小羊没烦恼!12 小时前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
傲世仙尊12 小时前
目录即文件-Ext文件系统收尾篇
linux·c语言
牵猫散步的鱼儿13 小时前
重载、重写(覆盖)、重定义区别
c语言
伞伞悦读13 小时前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
phltxy14 小时前
C 语言指针:从内存地址到灵活的数据访问
c语言
Smileyqp沛沛14 小时前
前端?C++ ?较大差异基础罗列
c++·基础·前端转c++
C语言小火车14 小时前
C/C++ 为什么需要编译器?
开发语言·c++