Lua
forestsenlin
这个作者很懒,什么都没留下…
展开
-
Lua按指定字符分隔字符串的3种方法
1.function split( str,reps ) local resultStrList = {} string.gsub(str,'[^'..reps..']+',function ( w ) table.insert(resultStrList,w) end) return resultStrListendstring库的gsub函数,共转载 2016-01-26 23:45:59 · 74403 阅读 · 0 评论 -
Lua调用C/C++函数
//// main.cpp// LuaAndCpp//#include <iostream>static int lua_getName(lua_State* L){ lua_pushstring(L, "string from c"); std::cout << "lua call c function \n" ; return 1;}static int showO转载 2016-07-18 21:00:23 · 502 阅读 · 0 评论 -
C/C++读取Lua中的变量及调用Lua函数
config.luaprint('--In Lua--')local a = -10print('--math.abs(a)--',math.abs(a))width = 1080height = 720name = "iphone"numStr = 12345function test1() print('--function test1--')endfunction test2(转载 2016-07-06 18:16:05 · 5572 阅读 · 0 评论 -
在C/C++项目中接入LuaSQLite3
首先需要 这3个文件,lsqlite3.c下载地址: 这里写链接内容 sqlite3.c和sqlite3.h下载地址: 这里写链接内容将这3个文件导入到项目中,并增加一个头文件lsqlite3.h, //// lsqlite3.h// LuaAndCpp//#ifndef lsqlite3_h#define lsqlite3_hint luaopen_lsqlite3(lu转载 2016-07-25 21:43:02 · 675 阅读 · 0 评论 -
在C/C++项目中集成Lua
1.下载Lua源码,本文使用的是Lua-5.2.3,然后拷贝src下的源码,需要将lua.c、luac.c、Makefile文件删除。2.将Lua源码引入C/C++项目中。编译没有问题。在安卓平台编译错误的解决方法:找到Lua源码中的llex.c,将函数static void trydecpoint (LexState *ls, SemInfo *seminfo) { char old = ls转载 2016-06-28 20:58:44 · 2713 阅读 · 0 评论 -
C/C++遍历Lua中的table
config.luatest_table = { name = 'app', age = 13}//// LuaEngine.h// LuaAndCpp//#ifndef __LuaAndCpp__LuaEngine__#define __LuaAndCpp__LuaEngine__#include <stdio.h>#include <iostream>#incl转载 2016-07-11 19:59:33 · 2065 阅读 · 0 评论 -
Lua实现在字符之间插入指定字符
声明:本文从别处拷贝而来,感谢原文作者的分享。function string_insert(str,insertStr) local len = #str; local left = len; local cnt = 0; local arr={0,0xc0,0xe0,0xf0,0xf8,0xfc}; local indx = -left;转载 2016-02-19 17:22:41 · 2648 阅读 · 0 评论 -
Lua编码的那些陷阱
声明:本文从别处拷贝而来,感谢原文作者的分享。1.字符串连接符 “..”当需要把多个小字符串拼接成一个大串的时候,例如,从一个sql结果集中取某列元素并将该元素组成以‘/’分割的字符串。如果sql结果集是上万行,那么就会发现效率越来越低。这性能越来越低的原因是什么呢?这就要去追溯lua的垃圾收集算法,当Lua虚拟机发现程序使用太多的内存,它就会遍历它所有的数据结构,并进行释放它认为是垃圾的数据。一般转载 2016-02-19 16:57:04 · 1172 阅读 · 0 评论 -
Lua处理中英文混合字符串
有一段如:’是一句测试,这pppppp[[[[[[aaaaxxxxxx,这是一句测试,这是一句测试,这是一句测试,这是一句测试,这是一句测试.’这样的中英文混合在一起的字符串,需要显示在游戏中:local MainScene = class("MainScene", cc.load("mvc").ViewBase)function MainScene:ctor() local str = '原创 2016-02-29 22:59:47 · 3961 阅读 · 0 评论 -
Lua读写txt文件
读写txt文件,主要用到的是io库的open函数,第一个参数为文件路径,第二个参数为打开方式,r表示读,w表示写,a(append)追加,b以二进制形式打开。1.读txt文件内容 local function readFile(fileName) local f = assert(io.open(fileName,'r')) local content = f:read('*all原创 2016-03-01 23:07:33 · 26371 阅读 · 1 评论 -
编写C模块供Lua使用
在Lua的源码linit.c中增加如下代码static int showRlt1(lua_State* L);static int showRlt2(lua_State* L); // 另一种注册方式 static const luaL_Reg mylibs[] = { {"showRlt1",showRlt1}, {"showRlt2",showRl转载 2016-07-21 21:33:03 · 789 阅读 · 0 评论