首页 > 其他分享 >hello_lua

hello_lua

时间:2024-02-19 13:44:21浏览次数:22  
标签:libnativefunc mult50 lua test LUA hello

https://github.com/norman/hello-lua

hello_lua2

libnativefunc.c

#include <lua.h>
#include <lauxlib.h>
static int l_mult50(lua_State* L)
{
    double number = luaL_checknumber(L, 1);
    lua_pushnumber(L, number*50);
    return 1;
}
int luaopen_libnativefunc(lua_State* L)
{
    static const struct luaL_Reg nativeFuncLib [] =
    {
         {"mult50", l_mult50}, //Your function name, and the function reference after
         {NULL, NULL}
    };
    lua_register(L, "nativelib", nativeFuncLib);
    return 1;
}

lua2.lua

nativelib = require "libnativefunc"
print(nativelib.l_mult50(60))

Makefile

LUA_DIR=~/lua_test/lua-5.4.4/src
LUA_LIBDIR=~/lua_test/lua-5.4.4/src
LIBFLAG= -shared -fPIC  -Wall 
hello.so:	libnativefunc.c
	$(CC) -o libnativefunc.so $(LIBFLAG) $(CFLAGS) libnativefunc.c -I$(LUA_LIBDIR) -L$(LUA_LIBDIR)

clean:
	$(RM) libnativefunc.so

test: luapi.so
	shake test.lua

rock:
	luarocks make luapi-scm-1.rockspec

运行

~/lua_test/lua-5.4.4/src/lua lua1.lua 

标签:libnativefunc,mult50,lua,test,LUA,hello
From: https://www.cnblogs.com/hyaline-doc/p/18020910

相关文章

  • OpenResty 介绍与实战讲解(nginx&lua)
    目录一、概述二、OpenResty安装三、OpenResty的工作原理四、OpenResty核心模块1)ngx_lua模块2)ngx_stream_lua模块3)ngx_http_lua_module模块4)ngx_http_headers_more模块5)ngx_http_echo模块6)ngx_http_lua_upstream模块7)ngx_http_redis模块8)ngx_http_proxy_connect_module......
  • Redis使用Lua脚本
    Redis使用Lua脚本Redis使用lua脚本的优点减少网络开销:将原来多次请求的逻辑封装为脚本在服务器上执行,只需1次请求就能完成,减少了网络往返时延;原子操作:Redis会将整个脚本作为一个整体执行,中间不会被其他命令插入;复用性:客户端发送的脚本会永久保存在Redis中,其他客户端可以复用......
  • [MRCTF2020]Hello_ misc
    [MRCTF2020]Hello_misc压缩包里有1个压缩包和png图片压缩包有密码,先对图片进行解析发现红色通道里还藏有一张图片得到zip压缩包密码:!@#$%67*()-+这个密码是图片中藏着的压缩包的密码,输入后打开里面有一个out.txt文件12725563191127191631271272556319163......
  • less报错,Error evaluating function `unit`: the first argument to unit must be a n
    1、less-loader版本太高了,可以降低版本2、lessc的执行参数里面增加一个参数--math=always3、可以关闭严格模式{loader:"less-loader",options:{lessOptions:{strictMath:false,},},}, 4、vite配置可以设置math:"always",......
  • How to evaluate the Messi Hong Kong fraud incident?
    WhoisLionelMessi?URL:https://en.wikipedia.org/wiki/Lionel_MessiAsafamousfootballplayer,Messiplaysacrucialroleinsociety,andhisconductshouldadheretobothmoralandlegalstandards.Fraudulentbehaviornotonlytarnisheshispe......
  • Codeforces-Hello-2024-Round
    比赛链接A.WalletExchange签到,某个人操作的时候只要一方有金币就行,所以最终赢的应该是拿到最后一个硬币的人,当\(a+b\equiv1\pmod2\)的时候Alice获胜,否则Bob获胜。时间复杂度\(\mathcal{O}(1)\)。codeforA#include<bits/stdc++.h>usingnamespacestd;inli......
  • Spring Boot + Lua = 王炸!
    曾经有一位魔术师,他擅长将SpringBoot和Redis这两个强大的工具结合成一种令人惊叹的组合。他的魔法武器是Redis的Lua脚本。今天,我们将揭开这个魔术师的秘密,探讨如何在SpringBoot项目中使用Lua脚本,以解锁新的可能性和提高性能。如果你一直在寻找提升你的应用程序的方法,那么这篇博......
  • hello-world
    title:HelloWorldQuickStartCreateanewpost$hexonew"MyNewPost"Moreinfo:WritingRunserver$hexoserverMoreinfo:ServerGeneratestaticfiles$hexogenerateMoreinfo:GeneratingDeploytoremotesites$hexodeployMorein......
  • Hello 2024C. Grouping Increases(贪心)
    我们只需要记录每个数结尾的数是多少(有点最长上升子序列的味道)这种子序列的题目很多都是这样的,因为不需要连续很多时候我们只记录最后一个元素是多少。\(记s为较大子序列结尾当前的数,t为较小子序列结尾的数,下面分类讨论\)\(当a[i]<=t<s时\)我们将a[i]既可以放进t所在的子序列,......
  • helloShell
    初识SHELL变量常规的变量赋值不必多说,shell脚本还可以从命令输出中提取信息,赋值给变量反引号字符testing=`date`$()格式testing=$(date)#!/bin/bashtoday=$(date+%y%m%d)ls/usr/bin-al>log.$today#目录将输出到log.240204中数学运算使用方括号比expr更......