从学通信的博士到从事IT行业的工程师 从原华为项目经理,到现任职公司架构师
发布时间:2013-01-13 13:27:27
在C语言中,可以通过调用lua_register或者luaL_newlib将C函数注册到lua环境,供lua脚本使用(请参考[1], [2],[3],[4])。同样道理,C语言也可以通过lua API调用lua函数。具体例子: 点击(此处)折叠或打开#include <lua.h>#include <lauxlib.h>#include <stdlib.h> /* For function exit() */#include <stdio.h> ......【阅读全文】
发布时间:2013-01-12 20:31:30
我们已经看到如何在C文件中使用lua_register注册lua可以使用的函数,也了解了C函数和lua函数之间如何传递参数。再提升一步,我们还可以将一组C函数组成一个模块交给lua环境使用。看具体的例子:mylualib.c 点击(此处)折叠或打开#include <lua.h>#include <lauxlib.h>#include <lualib.h>static int hello_c (lua_State *L) { const char * from_lua = lua_tostring(L,1);&n......【阅读全文】
发布时间:2013-01-12 00:25:38
lua通过一个运行时栈来维护参数传递及返回,使用lua_to*等函数获取lua传递到C函数的参数,使用lua_push*从C函数返回值到lua脚本。此外也可以使用lua_getglobal从C函数获取lua脚本定义的全局变量。具体参看例子(test_lua.c): 点击(此处)折叠或打开#include <lua.h>#include <lauxlib.h>#include <stdlib.h> /* For function exit() */#include <stdio.h> ......【阅读全文】
发布时间:2013-01-11 23:31:23
在C文件中,可以通过调用lua_register函数注册新的可以在lua脚本中使用的函数。具体例子(test_lua.c)如下所示: 点击(此处)折叠或打开#include <lua.h>#include <lauxlib.h>#include <stdlib.h> /* For function exit() */#include <stdio.h> /* For input/output */void bail(lua_State......【阅读全文】
发布时间:2013-01-11 23:15:58
lua是非常简单的脚本语言,我们以一个简单的例子开始(假设文件名字为my.lua) 点击(此处)折叠或打开print("Hello world")具体执行时,在命令行运行:lua my.lua结果为:$ lua my.lua Hello world另外,也可以在C语言中调用lua脚本。具体例子(test_lua.c)如下所示: 点击(此处)折叠或打开#include <lua.h>#include <lauxlib.h>#include <stdlib.h> /* For function e......【阅读全文】