function Mkidr.removeFile(path)
io.writefile(path, "")
os.remove(path)
end
--读取文件
function Mkidr.readFile(path)
local file = io.open(path, "rb")
if file then
local content = file:read("*all")
io.close(file)
return content
end
return nil
end
-- Lua lfs 库的使用
lfs.attributes(filepath [, aname]) 获取路径指定属性
lfs.chdir(path) 改变当前工作目录,成功返回true,失败返回nil加上错误信息
lfs.currentdir 获取当前工作目录,成功返回路径,失败为nil加上错误信息
lfs.dir(path) 返回一个迭代器(function)和一个目录(userdata),每次迭代器都会返回一个路径,直到不是文件目录为止,则迭代器返回nil
lfs.lock(filehandle, mode[, start[, length]])
lfs.mkdir(dirname) 创建一个新目录
lfs.rmdir(dirname) 删除一个已存在的目录,成功返回true,失败返回nil加上错误信息
-- Lua io *** 作
io.open (filename [, mode])
功能:按指定的模式打开一个文件,成功则返回文件句柄,失败则返回nil+错误信息
mode:
"r": 读模式 (默认)
"w": 写模式
"a": 添加模式
file:write(...)
功能:按指定的参数格式输出文件内容,参数必须为字符或数字,若要输出其它值,则需通过tostring或string.format进行转换
file:close()
功能:关闭文件,lua有垃圾自动回收........
io.exists()
测试文件是否存在,如果存在返回true
-- Lua os *** 作
os.remove (filename)
功能:删除文件或一个空目录,若函数调用失败则返加nil加错误信息
os.rename (oldname, newname)
功能:更改一个文件或目录名,若函数调用失败则返加nil加错误信息
os.setlocale (locale [, category])
功能:设置程序的当前设置,函数返回最新的值,失败则返回nil
os.time ([table])
功能:按table的内容返回一个时间值(数字),若不带参数则返回当前时间table的字段:
*** 作方法如下:nLog
_1.init
init(‘0’,1)_高速程序,当前的游戏是横屏游戏,并且home建在右面
function 点击(x,y)
_ body
touchDown(0, x , y)_模拟手指触摸位置 点下
mSleep(20) --停止20ms
touchMove(0, x , y)-- 模拟手指做轻微偏移
mSleep(20)
touchUp(0, x , y) _ 模拟手指抬起
while (true) do
点击(265, 1427)
mSleep(2000)
end
Lua是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放,其设计目的是为了嵌入应用程序种,从而为程序提供灵活的扩展和定制功能。
Lua是巴西里约热内卢天主教大学里的一个研究小组,有Roberto Ierusalimschy 、Waldemar Cleles和Luiz Henrique de Figueriredo锁组成并与1993年开发。
当 Lua 调用 C 函数的时候,使用和 C 调用 Lua 相同类型的栈来交互。C 函数从栈中获取她的参数,调用结束后将返回结果放到栈中。为了区分返回结果和栈中的其他的值,每个 C 函数还会返回结果的个数(the function returns (in C) the number of results it is leaving on the stack.)。
// luacallcpp.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include <stdio.h>
//lua头文件
#ifdef __cplusplus
extern "C" {
#include "lua.h"
#include <lauxlib.h>
#include <lualib.h>
}
#else
#include <lua.h>
#include <lualib.h>
#include <lauxlib.h>
#endif
int static add(lua_State* L)
{
//获取第一个参数
double x=lua_tonumber(L,1)
double y=lua_tonumber(L,2)
//返回值压栈,压入两个返回值
lua_pushnumber(L,x+y)
lua_pushnumber(L,1000)
//返回值的个数,
return 2
}
int _tmain(int argc, _TCHAR* argv[])
{
lua_State * L=NULL
/* 初始化 Lua */
L = lua_open()
/* 载入Lua基本库 */
luaL_openlibs(L)
/* 运行脚本 */
luaL_dofile(L, "./script/func.lua")
//函数入栈
lua_pushcfunction(L,add)
//设置全局函数名
lua_setglobal(L,"Add")
//调用lua函数LUACALLCPP来反调cpp中的add
lua_getglobal(L,"LUACALLCPP")
lua_pushnumber(L,10)
lua_pushnumber(L,34.33)
//两个参数,两个返回值
lua_pcall(L,2,2,0)
//取返回值二
printf("lua call cpp return val is %f \n",lua_tonumber(L,-1))
//取返回值一
printf("lua call cpp return val is %f \n",lua_tonumber(L,-2))
/* 清除Lua */
lua_close(L)
return 0
}
---------------------------------------
--region *.lua
--Date
--此文件由[BabeLua]插件自动生成
print("func.lua hava been loaded")
function LUACALLCPP(x,y)
-- 调用c++中的函数
return Add(x,y)
--print(Add(x,y))
end
--endregion
运行结果:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)