一篇文章讲明白lua文件是什么?

一篇文章讲明白lua文件是什么?

lua文件是什么?

一种小巧的脚本语言,其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。Lua由标准C编写而成,几乎在所有操作系统和平台上都可以编译,运行。Lua并没有提供强大的库,这是由它的定位决定的。所以Lua不适合作为开发独立应用程序的语言。Lua 有一个同时进行的JIT项目,提供在特定平台上的即时编译功能。

Lua脚本可以很容易的被C/C++ 代码调用,也可以反过来调用C/C++的函数,这使得Lua在应用程序中可以被广泛应用。不仅仅作为扩展脚本,也可以作为普通的配置文件,代替XML,ini等文件格式,并且更容易理解和维护。Lua由标准C编写而成,代码简洁优美,几乎在所有操作系统和平台上都可以编译,运行。一个完整的Lua解释器不过200k,在目前所有脚本引擎中,Lua的速度是最快的。这一切都决定了Lua是作为嵌入式脚本的最佳选择。

运行可以通过 Lua 的交互模式,也可以用记事本编辑代码保存为 .lua 的格式,通过 lua 编译器运行。也可以通过第三方工具,将 lua 打包独立运行。

lua_newtable(L); //创建一个表格,放在栈顶

lua_pushstring(L,"mydata"); //压入key

lua_pushnumber(L,66); //压入value

lua_settable(L,-3); //弹出key,value,并设置到table里面去

lua_pushstring(L,"subdata");//压入key

lua_newtable(L); //压入value,也是一个table

lua_pushstring(L,"mydata"); //压入subtable的key

lua_pushnumber(L,53);

valuelua_settable(L,-3); //弹出key,value,并设置到subtable

lua_settable(L,-3); //这时候父table的位置还是-3,弹出key,value(subtable),

//并设置到table里去

lua_pushstring(L,"mydata2");//同上

lua_pushnumber(L,77);

lua_settable(L,-3);

return1;

//栈里现在就一个table其他都被弹掉了。如果要返回一个数组,

//用如下代码:(注意那个关于trick的注释,我在等官方的解释。

//经过验证,这个问题只在windows版本调用dll中方法的时候出现。WinCE正常)

lua_pushstring(L,"arri");

lua_newtable(L);

{

//atrick:otherwisetheluaenginewillcrash.ThiselementisinvisibleinLuascript

lua_pushnumber(L,-1);

lua_rawseti(L,-2,0);

for(int i=0; i

{

lua_pushnumber(L, arri);

lua_rawseti(L, -2, i+1);

}//代码效果参考:http://www.ezhiqi.com/zx/art_7878.html

}//代码效果参考:http://www.ezhiqi.com/zx/art_938.html

lua_settable(L,-3);

相关推荐

荒瀧一斗畢業屬性
365BET官网

荒瀧一斗畢業屬性

07-25 857
达内一般培训多久
365bet在线网址

达内一般培训多久

09-22 956
从零开始认识梦幻西游召唤兽,资质、成长真的很重要