LUA教程Chunks-2
Chunk是一系列语句,Lua执行的每一块语句,比如一个文件或者交互模式下的每一行都是一个Chunk。
每个语句结尾的分号(;)是可选的,但如果同一行有多个语句最好用;分开
a = 1 b = a*2 -- ugly, but valid
一个Chunk可以是一个语句,也可以是一系列语句的组合,还可以是函数,Chunk可以很大,在Lua中几个MByte的Chunk是很常见的。
你还可以以交互模式运行Lua,不带参数运行Lua:
Lua 5.0 Copyright © 1994-2003 Tecgraf, PUC-Rio
>
你键入的每个命令(比如:"Hello World")在你键入回车之后立即被执行,键入文件结束符可以退出交互模式(Ctrl-D in Unix, Ctrl-Z in DOS/Windows),或者调用OS库的os.exit()函数也可以退出。
在交互模式下,Lua通常把每一个行当作一个Chunk,但如果Lua一行不是一个完整的Chunk时,他会等待继续输入直到得到一个完整的Chunk.在Lua等待续行时,显示不同的提示符(一般是>>).
可以通过指定参数让Lua执行一系列Chunk。例如:假定一个文件a内有单个语句x=1;另一个文件b有语句print(x)
prompt> lua -la -lb
命令首先在一个Chunk内先运行a然后运行b。(注意:-l选项会调用require,将会在指定的目录下搜索文件,如果环境变量没有设好,上面的命令可能不能正确运行。我们将在8.1节详细更详细的讨论the require function)
-i选项要求Lua运行指定Chunk后进入交互模式.
prompt> lua -i -la -lb
将在一个Chunk内先运行a然后运行b,最后直接进入交互模式。
另一个连接外部Chunk的方式是使用dofile函数,dofile函数加载文件并执行它.假设有一个文件:
-- file 'lib1.lua'
function norm (x, y)local n2 = x^2 + y^2return math.sqrt(n2)
end
function twice (x)return 2*x
end
在交互模式下:
> dofile("lib1.lua") -- load your library
> n = norm(3.4, 1.0)
> print(twice(n)) --> 7.0880180586677
-i
和dofile
在调试或者测试Lua代码时是很方便的。
源码:LUA一个小巧脚本语言学习笔记
LUA教程Chunks-2
LUA教程Chunks-2相关推荐
- Lua 教程 | 菜鸟教程
Table of Contents Lua 教程 设计目的 Lua 特性 Lua 应用场景 第一个 Lua 程序 Lua 环境安装 Linux 系统上安装 Lua 基本语法 第一个 Lua 程序 交互 ...
- centos 安装mysql-proxy_详解在Centos 5.2下安装最新Mysql Proxy LUA教程
在Centos 5.2下安装***Mysql Proxy LUA教程是本文要介绍的内容,主要是来了解Mysql Proxy LUA的安装过程,文章中有很详细的讲解,具体内容来看本文详解. mysql ...
- 一、Lua 教程的学习
Lua 教程 Lua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能. Lua 是巴西里约热内卢天主教大学(Po ...
- 【Lua 教程系列第 4 篇】Lua 中的第一行代码 hello world
这是[Lua 教程系列第 4 篇],如果觉得有用的话,欢迎关注专栏. 接着上一篇博客继续写. 这里我的 lua 文件名起名为"LuaTest",接着输入 print("h ...
- LUA教程类型Strings-7
指字符的序列.lua是8位字节,所以字符串可以包含任何数值字符,包括嵌入的0.这意味着你可以存储任意的二进制数据在一个字符串里.Lua中字符串是不可以修改的,你可以创建一个新的变量存放你要的字符串,如 ...
- 1.0 Lua教程之基本语法
概述 特性 安装 基本语法 交互式编程 脚本式编程 注释 标识符 全局变量 基本数据类型 nil 布尔 number 字符串 表 函数 线程 userdata(自定义类型) 摘自Lua教程,仅供学习, ...
- lua怎么嵌入php,Lua教程(一):在C++中嵌入Lua脚本
本系列教程主要介绍如何在C/C++程序里面嵌入Lua脚本,我打算从以下几个方面来介绍: 1.如何在C/C++里面嵌入Lua脚本 2.Lua访问C/C++数据结构(这里面要介绍类,结构体,函数,变量,枚 ...
- 【Lua 教程系列第 2 篇】什么是 Lua 语言?
这是[Lua 教程系列第 2 篇],如果觉得有用的话,欢迎关注专栏. 一:Lua 语言简介 Lua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而 ...
- Lua教程-1:C/C++操作Lua数组和字符串
Lua教程-1:C/C++操作Lua数组和字符串 C/C++操作Lua数组 Lua数组Overview 通用Table操作方法 专门的数组操作方法 C/C++操作Lua字符串 基本字符串操作 格式化输 ...
- 剑网重置版lua教程 已在tx发布
剑网重置版lua教程 第一课:什么是lua 第二课:使用lua和lua函数 第三课:封装一个无参call 第四课:封装一个有参call 第五课:封装一个有返回的call 第六课:建立易语言lua测试环 ...
最新文章
- mahout相关笔记
- python提交spark_带有python入口点的sparksubmit
- python中安装一个第三方库的命令格式是-PyCharm 如何安装python第三方库及插件
- 查看cpu使用率_腾讯游戏开发工程师:Linux 机器 CPU 毛刺问题排查
- KandQ:那年,那树,那些知识点
- 什么是硬件设计?——成功的硬件设计需要什么?
- Oracle宣布新的Java Champions
- cocos2d-x帧动画实现(续)
- 牛逼!它比传统数据库快 100-1000,真不相信?
- 接口与interface关键字
- 机器学习——人工神经网络(NN)
- Centos7配置软RAID+LVM
- 系统运维应届生面试题
- 一个操作系统的实现(8)进程间通信
- rockchip中的vop
- C语言实现linux环境UDP协议接收发送数据
- 【项目管理】项目成本管理
- 制作chm文件搜索时总提示找不到主题的问题
- 高度自律是怎样一种人生体验(二)
- 五步打造持续变现知识IP