1. Lua解释器Lua解释器是什么? Lua解释器是一个使用Lua标准库实现的独立的解释器,是一个很小的Lua应用(总共不超过500行的代码)。解释器负责程序和使用者的接口:从使用者那里获取文件或者字符串,并传给Lua标准库,Lua标准库负责最终的代码运行。当Lua作为独立程序运行的时候,Lua和...
转载 2014-06-19 17:03:00
306阅读
2评论
学习Lua的最终目的就是为了和C/C++互调,所以C API是承上启下的重头戏。核心思想:LuaC通过一个抽象的栈进行通信。你可以理解为LuaC各司其职,只是通过栈进行沟通,类似操作系统的进程通讯一样。这样做至少有两点好处:1. 程序员不必关心另一个语言是如何工作的,只需要清楚有哪些值是自己需要的  2. 避免类型不一致或者动态内存管理带来的问题,因为C需要手动管理内存,而Lua有自
此文转自://blog..net/perfect2011/article/details/19200511(感谢。。。) 首先了解下c++与lua之间的通信: 假设在一个lua文件中有如下定义 -- hello.lua 文件 myName = "beauty girl" 请注意红色数
转载 2022-01-11 17:46:27
192阅读
Lua是一种嵌入式脚本语言,即Lua不是可以单独运行的程序,在实际应用中,主要存在两种应用形式。第一种形式是,C/C++作为主程序,调用Lua代码,此时可以将Lua看做“可扩展的语言”,我们将这种应用称为“应用程序代码”。第二种形式是Lua具有控制权,而C/C++代码则作为Lua的“库代码”。在这两...
转载 2014-09-12 17:37:00
227阅读
2评论
本文转自://blog..net/a_asinceo/article/details/49907903(感谢。。。) 一、单个参数的传递 首先我们在Lua中注册一个C类PJYCallbackMgr,其中一个方法为: [java] view plain? int testLuaCall
转载 2022-01-11 17:44:31
306阅读
《programming in lua 》的第24章讲C语言的API函数。那么什么叫做lua解释器?书中的意思lua解释器就是除了lua脚本和lua库之外的C语言程序。lua脚本(由用户输入的字符串或文件组成)   <----->  lua解释器  <-------->lua库(比如V5.1.4版本的库)===============
转载 2024-05-08 13:18:50
137阅读
1. 建一个新表void lua_createtable (lua_State *L, int narr, int nrec)创建一个新的table, 并把它放在栈顶. narr和nrec分别指定该table的array部分和hash部分的预分配元素数量无返回值栈高度+1, 栈顶元素是新table#define lua_newtable(L) lua_cre
转载 2024-05-22 12:03:27
375阅读
通过c++调用lua 脚本,    环境VC++6.0    lua  sdk 5.1.4   在调用前先认识几个函数。1.调用lua_open()将创建一个指向Lua解释器的指针。2. luaL_openlibs()函数加载Lua库。3.使用luaL_dofile()加载脚本并运行脚本。4. lua_close()来关闭Lua指向解释器的指针。 5.调用lua_getglobal()将add()
转载 2014-06-19 17:03:00
299阅读
2评论
Lua源码分析 --对象表示Lua是动态类型的语言,即是说类型附着于值而不变量[1]. Lua的八种基本类型空,布尔, 数值, 字符串,表, 函数和用户数据.所有类似的值都是虚拟机的第一类值. Lua解释器将其表示成为标签联合(tagged union).如下面代码示例所示: lobject.h : 56 /* ** Union of all Lua values */ typedef unio
转载 2024-02-23 20:14:35
94阅读
Ldoc是一个类似doxygen的文档生成工具,doxygen功能更强大但是不支持lua语言,所以需要专门的Ldoc工具来编写Lua文档:https://github.com/stevedonovan/LDoc在官方的README.md页面中对安装过程描述很含糊,以至于弄了不少时间(真不知道是自己理解能力有问题还是他们表达能力有问题,无语)。不过,我发现程序员应该知道自己要装的工具用来做什么的。比
转载 2024-07-23 09:06:35
92阅读
转自:://.cnblogs./ringofthec/archive/2010/10/22/lua.html1. 建一个新表void lua_createtable (lua_State *L, int narr, int nrec)创建一个新的table, 并把它放在栈顶. n...
转载 2015-05-26 12:11:00
332阅读
2评论
第27章 C语言API总览    lua.h(前缀 lua_): 声明了 Lua 提供的基础函数,其中包括创建新 Lua 环境的函数、调用 Lua 函数的函数等等。库( auxiliary library) 使用 lua.h 提供的基础 API 来提供更高层次的抽象,不能访问 Lua 的内部元素,而只能通过lua.h 中声明的官方基础 API 完成所有工作。#include &
转载 10月前
81阅读
# Lua Java API 简介 Lua 是一种轻量级的脚本语言,常被用于嵌入式系统和游戏开发中。与此同时,Java 是一种广泛应用于企业级开发的编程语言。为了让这两种语言能够互相通信和调用,我们需要使用 Lua Java API。通过这个 API,我们可以在 Java 中调用 Lua 脚本,实现更加灵活和高效的编程。 ## Lua Java API 的使用 首先,我们需要引入 Lua
原创 2024-05-01 04:22:55
53阅读
lua_call族函数解释, luac通信的基础: 栈, TValue 这些东西是平时遇到的, 觉得有一定的价值, 所以记录下来, 以后遇到类似的问题可以查阅, 同时分享出来也能方便需要的人, 转载请注明来自RingOfTheC[ring.of.the.c@gmail.com] 打算记录一些lua_api, 可能会觉得lua文档中已经说的很清
转载 2023-07-16 11:51:43
293阅读
  Lua可作为扩展性语言(Lua可以作为程序库用来扩展应用的功能),同时也是个可扩展的语言(Lua程序中可以注册由其他语言实现的函数)。C API是一个C代码与Lua进行交互的函数集。他由以下部分组成:读写Lua全局变量的函数、调用Lua函数的函数、运行Lua代码片断的函数、注册C函数然后可以在Lua中被调用的函数,等等。  API中有些函数为了方便以宏的方式实现。  当在LuaC之间交换数据
转载 2024-08-15 21:37:42
41阅读
1.场景最近做了一个新的项目,需要提供接口供第三方调用,在api接口调用处需要实现一个限流的策略, 所以采用了 Redis + Lua脚本的一个策略来达到一个限流的目的2.实现原理:当第三方服务在请求某一个具体的接口之前,把接口名作为key去redis中查看这个key在单位时间内的访问次数(例如1秒20次,那就设置这个key的过期时间是1秒)当这个key的次数在一秒内的次数没有达到20次,也就是没
转载 2024-03-21 10:58:40
165阅读
3.1 - 堆栈 3.2 - 堆栈尺寸 3.3 - 伪索引 3.4 - C Closure 3.5 - 注册表 3.6 - C 中的错误处理
转载 2024-05-27 15:15:18
71阅读
最近在学Lua 一直对模块与包的使用有很多不明白的地方,有的引用使用. 有的引用使用: 到底都是怎么个情况呢?今天下午要搞定!一个包就是模块的集合:A Package is a collection of modules.可以使用require和module函数来分别引用和创建Lua中的模块,调用模块内函数的简单方法:require "mod" mod.foo()如果模块名太长,可以设置一个loc
转载 2024-06-05 12:03:07
77阅读
Lua基础简介第一个lua程序--[[这是多行注释]]-- --[[这是多行注释]] --[[这也是多行注释--]] --单行注释 print("hello world");Lua变量--lua中的语法简介1: --[[ 1. lua可以没有分号结尾,有也不影响。这个看个人习惯了。 2. lua中所有的额变量都不需要声明,直接写变量名就可以用,且变量类型取决于赋值的类型,这一点很像C#中的var。
转载 2024-03-28 15:34:47
156阅读
1. 基础库我们在整个教程中使用了各种主题下的基本库。 下表提供了相关页面的链接,并列出了本Lua教程各部分所涵盖的功能。编号库/方法作用1错误处理包括错误处理函数,如断言, 错误,如Lua错误处理中所述。2内存管理包括与垃圾收集相关的自动内存管理功能, 如Lua垃圾收集中所述。3dofile ([filename])它打开文件并以块的形式执行文件的内容。4_G因此是保存全局环境的全局变量(即_G
转载 2024-05-22 10:35:00
236阅读
  • 1
  • 2
  • 3
  • 4
  • 5