lua语言可以直接调用c/c++函数,进一步扩展业务功能。详细步骤如下:
1. 准备lua库文件,如果本地安装了lua程序,可以搜索“lua.h”文件,将该目录所有文件拷贝至开发目录。
2. 新建c文件,如mylua.c,包括以下内容。
说明如下:
luaopen_* : * 表示模块名称, lua文件引用模块时对应的包名称(如require "mylua"),luaL_register的第二个参数与* 保持一致.
mylib:表示函数数组,结尾为{NULL,NULL},其中第一个参数为lua调用函数,第二个参数为对应c语言方法。
add:自定义的方法名称,参数只有一个lua_State *L,返回值1表示成功
3,将mylua.c 生成动态库文件,linux命令如下
gcc -fPIC -shared -o mylua.so mylua.c
4, 将mylua.so文件放到lua_path目录下
mv mylua.so /usr/lib64/lua/5.1/mylua.so
5,lua文件中的使用如下:
require "mylua"
print(mylua.add(2,4))
本文介绍如何通过五个步骤让Lua语言直接调用C/C++函数,扩展业务功能。首先准备Lua库文件,接着创建包含接口实现的C文件,然后生成动态链接库,之后将动态库文件置于Lua路径中,最后在Lua脚本中通过require引入并调用C/C++函数。
介绍, lua调用C语言函数详解(一)&spm=1001.2101.3001.5002&articleId=43116071&d=1&t=3&u=d03b441ff0104266ac09a79599d2a621)
2万+

被折叠的 条评论
为什么被折叠?



