![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Lua
hksoobe
这个作者很懒,什么都没留下…
展开
-
Lua和C程序通过一个堆栈交换数据
数据交换介绍 Lua和C程序通过一个堆栈交换数据: struct lua_State堆栈的序号可以从栈顶和栈底计数,从栈底计数,则栈底是1,向栈顶方向递增。从栈顶计数,则栈顶是-1,向栈底方向递减。一般都用从栈顶计数的方式。堆栈的默认大小是20,可以用lua_checkstack修改.用lua_gettop则可以获得栈里的元素数目。并不是说在栈顶有一个整形元素。而是计算了一下栈顶元素在栈转载 2014-06-11 21:20:08 · 530 阅读 · 0 评论 -
lua的堆栈(摘要)
首先了解下c++与lua之间的通信:假设在一个lua文件中有如下定义-- hello.lua 文件myName = "beauty girl"请注意红色数字,代表通信顺序:1) C++想获取Lua的myName字符串的值,所以它把myName放到Lua堆栈(栈顶),以便Lua能看到2) Lua从堆栈(栈顶)中获取myName,此时栈顶再次转载 2014-06-11 21:25:05 · 382 阅读 · 0 评论 -
lua table操作详解
本文转自 http://hi.baidu.com/zengfazhou/item/7733ae03eab83d334ac4a3c0lua_gettablelua_getglobal(L, "mytable") lua_pushnumber(L, 1) lua_gettable(L, -2) lua_settablelua_getglobal转载 2014-06-12 00:57:39 · 699 阅读 · 0 评论 -
Lua5.1的常用API
Lua5.1的常用APIlua_StateLua状态机或叫Lua虚拟机,支持多线程,可创建多个状态机typedef int (*lua_Cfunction)(lua_State* L)Lua所调用的C函数的函数原型,在C程序中需要将这种函数类型的函数注册到Lua状态机中,此后Lua才能调用到C的函数如果有函数int c_Hello(lua转载 2014-06-12 01:31:43 · 521 阅读 · 0 评论 -
为Lua5.2.2编写C模块
本文的环境是win7和VS2010:1.首先到官网下载lua5.2.2源码包,并且在VS2010上新建空工程比如命名LuaCons,将源码包中的头文件和源文件都添加进去。2.需要生成lua的动态链接库,首先去掉源文件中的lua.c,并且在vs中的属性->常规->配置类型,修改为动态库(.dll),并且在属性->C/C++->预处理器中,添加预定义LUA_COMPAT_A转载 2014-06-12 21:30:06 · 516 阅读 · 0 评论 -
Lua和C语言的交互
Lua生来就是为了和C交互的,因此使用C扩展Lua或者将Lua嵌入到C当中都是非常流行的做法。要想理解C和Lua的交互方式,首先要回顾一下C语言是如何处理函数参数的。C函数和参数大家知道C语言是用汇编实现的,在汇编语言中可没有函数的概念,与函数对应的是叫做子过程的东西,子过程就是一段指令,一个子过程与它调用的子过程之间通过栈来进行参数的传递交互。在一个子过程在调用别的子过程之前,会按照转载 2014-06-11 12:52:08 · 598 阅读 · 0 评论 -
C向LUA中写入多维数组(表)
最近开发的一个软件需要用一个数组做为软件的设置,部分设置有软件自带做为初始化,其它部分有LUA脚本加入,这里先做一个测试例子用Delphi实现数组结构如下:UI = {UserName = {T = 'Text',C = '用户名', V = 'user',H = '请输入你的用户名'};PassWord = {T = 'Text',C = '密码', V = 'word',H =原创 2015-03-27 14:28:13 · 900 阅读 · 0 评论 -
Lua栈介绍以及实例
c++中载入lua的代码#include //所需要的头文件extern "C"{#include "include/lua.h"#include "include/lualib.h"#include "include/lauxlib.h"#pragma comment(lib, "lua.lib")};int main(void){转载 2014-06-11 22:54:25 · 508 阅读 · 0 评论 -
LUA相关基础知识
Lua是一个嵌入式的脚本语言,它不仅可以单独使用还能与其它语言混合调用。Lua与其它脚本语言相比,其突出优势在于:1. 可扩展性。Lua的扩展性非常卓越,以至于很多人把Lua用作搭建领域语言的工具(注:比如游戏脚本)。Lua被设计为易于扩展的,可以通过Lua代码或者 C代码扩展,Lua的很多功能都是通过外部库来扩展的。Lua很容易与C/C++、java、fortran、Smalltalk转载 2016-01-22 01:31:48 · 501 阅读 · 1 评论