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
相关推荐
小糯米60114 小时前
C语言 动态内存管理
c语言·开发语言
liulilittle14 小时前
拥塞控制:公平性的不可能三角
网络·c++·网络协议·tcp/ip·计算机网络·tcp·通信
say_fall14 小时前
可编程中断控制器8259A工作方式超详细解析
android·开发语言·学习·硬件架构·硬件工程
San813_LDD14 小时前
[QT]《Qt 开发避坑指南:随机数、容器操作与 VS 环境配置》
开发语言·qt
小糯米60114 小时前
C语言 自定义类型:联合和枚举
java·c语言·开发语言
weixin_5231853214 小时前
Java基础知识总结(二):JVM内存结构与变量生命周期
java·开发语言·jvm
石山代码14 小时前
Python 进阶学习指南
开发语言·python
xiaoshuaishuai815 小时前
C# 多线程之间对比
java·开发语言·c#
姚愚谦15 小时前
C++中的push_back与emplace_back的区别?
c++
ZC跨境爬虫16 小时前
跟着 MDN 学JavaScript day_9:字符串方法实战挑战与解题思路
开发语言·前端·javascript