查阅资料发现易语言调用dll是通过stdcall的方式,所以代码如下:在这里插入代码片
__declspec(dllexport) int __stdcall MyFunction(int a, int b)
{
return a + b;
}
把上面代码保存,例如保存为MyDll.c,再在保存的文件夹内打开cmd,输入
gcc -shared -o MyDll.dll MyDll.c
就可以在目录下找到MyDll.dll
然后就是易语言的调用了,易语言调用代码如下:
函数后面加了@8,是因为函数有两个参数,两个参数分别占用了4个字节(int)
剩下的就是在易语言中正常用就可以了
说明:
其中,__declspec(dllexport) 是一个用于在 Windows 平台上声明函数、变量或对象在动态链接库(DLL)中可被导出的扩展关键字
具体含义如下:
__declspec(dllexport) 告诉编译器将修饰的函数、变量或对象导出为 DLL 的公共符号,使其可供其他程序或模块使用。
导出的函数、变量或对象可以被其他程序或模块引用和调用,而不仅限于定义它们的 DLL 内部使用。
这个关键字通常用于在 DLL 中定义公共接口,以便外部程序可以通过导入该 DLL 并使用其中的函数、变量或对象。
在使用 __declspec(dllexport) 修饰函数时,需要在编译该函数所在的源文件时指定编译