Linux下编写Lua扩展so文件和调用方法实例(linux扩展文件系统)居然可以这样

随心笔谈9个月前发布 admin
215 00
🌐 经济型:买域名、轻量云服务器、用途:游戏 网站等 《腾讯云》特点:特价机便宜 适合初学者用 点我优惠购买
🚀 拓展型:买域名、轻量云服务器、用途:游戏 网站等 《阿里云》特点:中档服务器便宜 域名备案事多 点我优惠购买
🛡️ 稳定型:买域名、轻量云服务器、用途:游戏 网站等 《西部数码》 特点:比上两家略贵但是稳定性超好事也少 点我优惠购买

文章摘要

本文描述了一段使用C语言实现的Lua扩展库的代码,展示了如何通过C语言与Lua的C API进行交互。代码中定义了一个名为`mylib`的注册表,并在`luaopen_mylib`函数中使用`luaI_openlib`将该注册表加载到Lua环境中。其中,`l_sin`函数是一个静态函数,用于计算输入的双精度数的正弦值并返回结果。代码还提到了函数的注册和调用,体现了如何在C语言中扩展Lua功能。

#include

#include

#include

#include

#include

#include

#include

#include

#include

 

#include

#include “lua.h”

#include “lualib.h”

#include “lauxlib.h”

int luaopen_mylib(lua_State *L);

static int l_sin (lua_State *L)

{

double d=luaL_checknumber(L, 1);

lua_pushnumber(L, sin(d));

//printf(“ok now is  luahook!\n”);

return 1;

}

static const luaL_Reg mylib[]=

{

,

{NULL, NULL}

};

 int luaopen_mylib(lua_State *L)

{

  luaI_openlib(L, “mylib”, mylib, 0);

return 1;

}

© 版权声明

相关文章