循环中内嵌一个循环,然后将具体的逻辑放在内嵌循环中去处理,在内嵌循环的开始,添加一个判断语句,满足条件就跳出内嵌循环. 示例代码如下: tab = {,,,,} ,#tab do while true do then break end print(tab[i]) break end end 运算结果: 切记,内嵌循环中两个地方需要break!!! 内嵌循环中两个地方需要break!!! 内嵌循环中两个地方需要break!!!
前面一篇文章中介绍了lua给下面代码生成最终的字节码的整个过程,这次我们来看看lua vm执行这些字节码的过程. foo = "bar" local a, b = "a", "b" foo = a 生成的字节码如下所示: 之前lua是在luaY_parser函数(入口)中完成了lua脚本的解析生成字节码的整个过程的,在生成了main func(过程见“lua解析赋值类型代码的过程“)后luaY_parser会返回一个Proto结构体指针tf,Pr
前言 由于之前有c/c++.javascript基础,所以学Lua的时候喜欢拿来和前面的语言比较,这里主要和C比较 1.if...else Lua的if语句格式: if 条件 then 条件成立,运行的程序块 else 条件失败,运行的程序块 end Lua没有大括号来表明程序块,所以,后面要加上end来表明if语句已经结束,同样,嵌套if时,通过elseif和else if来区分 2.while 格式: while 表达式 do --body end 注意:Lua并没有像其他语言那样提供类似
今天在学习lua,熟悉项目代码的过程中,发现string.gsub好高级,所以在此mark下. 以下是lua5.1的官方文档介绍. string.gsub (s, pattern, repl [, n]) Returns a copy of s in which all occurrences of the pattern have been replaced by a replacement string specified by repl, which may be a string, a
lua的库文件地址: http://luaforge.net/projects/lua官网 http://lua.org --[[ print string. multiple line comments. like {} in Tcl. ]]-- print ("hello") -- comments of this file. -- variables num = 1 str = "abc" tab = {} d = print -- print type th