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
相关推荐
十五年专注C++开发7 小时前
FlatBuffers: 一个高效的零拷贝二进制序列化库
c++·序列化·反序列化·flatbuffers
BuHuaX7 小时前
Lua 与 ToLua:运行机制及热更新原理
开发语言·unity·junit·c#·lua
xys_6787 小时前
深挖C++:C++入门基础
开发语言·c++
高冷小鱼殿下8 小时前
C 语言指针与输入输出
c++
幻境如梦丶皆为虚8 小时前
从零写一个 DSH 插件:在左侧菜单栏加一个「测试」
开发语言·javascript·ecmascript
LabVIEW开发8 小时前
LabVIEW 局部变量与数据流:这道 CLAD 题为什么答案是 Undefined
java·开发语言·labview
路溪非溪8 小时前
C++标准库之智能指针
linux·开发语言·c++
Lxx_Zw8 小时前
串口命令如何从字符串长成协议:帧头、长度、校验和与状态机
c语言·stm32·单片机·嵌入式硬件
hetao17338379 小时前
2026-11-02 hetao1733837 的刷题记录
c++·算法