原文:Lua和C语言的交互——C API

Lua可作为扩展性语言 Lua可以作为程序库用来扩展应用的功能 ,同时也是个可扩展的语言 Lua程序中可以注册由其他语言实现的函数 。 C和Lua交互的部分称为C API。C API是一个C代码与Lua进行交互的函数集。他由以下部分组成:读写Lua全局变量的函数 调用Lua函数的函数 运行Lua代码片断的函数 注册C函数然后可以在Lua中被调用的函数,等等。 API中有些函数为了方便以宏的方式实 ...

2014-07-27 21:46 1 16762 推荐指数:

查看详情

C语言Lua之间交互的原理

建议去看《Lua程序设计》24-28章,里面详细介绍了LuaC语言之间的通信原理,多看函数是怎么调用的,就会理解了虚拟栈是怎么操作的,以下是我看完后的总结。 为什么Lua可以作为热更新语言 首先我们得知道什么是热更新,简单来说,就是在用户通下载安装APP之后,打开App时遇到的即时更新。本质 ...

Sat Mar 12 20:10:00 CST 2022 0 1184
C++与Lua交互(四)

引言 通过前几篇,我们已经对LuaC API有了一定的了解,如lua_push*、lua_is*、lua_to*等等。用C++调用Lua数据时,我们主要运用lua_getglobal与lua_push*配合以达到目的。现在我们来试试用Lua调用C++数据。 C++数据类型映射到Lua ...

Sun Mar 23 20:01:00 CST 2014 10 7406
C++与Lua交互(五)

引言 要将C++中的对象类型映射到Lua中,就不得不要先了解Lua面向对象的机制。在这里,我们先看一下Lua面向对象的实现基础——metatable,再以此实现C++对象到Lua的映射。 Lua面向对象 不得不先提一下Lua的几种函数写法,普通函数有两种写法: 如果要将一个普通函数赋 ...

Tue Apr 15 18:16:00 CST 2014 7 5312
C++与Lua交互(三)

通过上一篇的热身,我们对C++调用lua变量有了一个认识,现在让我们再深入一点,去探索一下如何调用lua的函数、表。 Lua与宿主通讯的关键——栈 lua是个动态脚本语言,它的数据类型如何映射到C++这种静态类型语言中?lua是有GC机制的,这与C++手动管理内存相悖。如何解决这些问题 ...

Thu Mar 13 19:59:00 CST 2014 2 3015
[Lua]与c#的交互(一)

参考链接: https://www.cnblogs.com/chinarbolg/p/9601452.html luainterface下载(推荐用1.5.3): http://files ...

Sun Jan 26 21:55:00 CST 2020 0 1266
LuaC交互

LuaC交互 Lua是一个嵌入式的语言,它不仅可以是一个独立运行的程序,也可以是一个用来嵌入其它应用的程序库。 C API是一个C代码与Lua进行交互的函数集,它由以下几部分构成: 1、 读写Lua全局变量的函数; 2、 调用Lua函数的函数; 3、 运行Lua代码 ...

Thu Oct 30 00:00:00 CST 2014 0 7227
LuaC 交互之UserData(4)

lua作为脚本于要能够使用宿主语言的类型,不管是宿主基本的或者扩展的类型结构,所以Lua提供的UserData来满足扩展的需求。在Lua中使用宿主语言的类型至少要考虑到几个方面: 数据内存 生命周期 数据操作 下面的内容主要参考《Lua程序设计》,数据保存在Lua堆栈 ...

Tue Feb 21 02:40:00 CST 2017 0 8385
C++与Lua交互(一)

引言 之前做手游项目时,客户端用lua做脚本,基本所有游戏逻辑都用它完成,玩起来有点不爽,感觉“太重”了。而我又比较偏服务端这边(仅有C++),所以热情不高。最近,加入了一个端游项目,客户端和服务器都用了lua,各种玩法是让我眼界大开。在此,写下自己的心得与体会,希望能与大家共同探讨进步 ...

Wed Feb 26 06:48:00 CST 2014 12 4543
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM