zoukankan      html  css  js  c++  java
  • Lua学习-Chunks学习

    Chunks是一系列语句,Lua执行的每一块语句,比如一个文件或者交互模式下的每一行都是一个Chunks
     
    每个语句结尾的分号(;)是可选的,但如果同一行有多个语句最好用;
     
     
     
    假定一个文件 a 内有单个语句 x=1;另一个文件 b 有语句 print(x)
     
    prompt> lua -la -lb

    将在一个 Chunk 内先运行 a 然后运行 b,最后直接进入交互模式。

    -- file 'lib1.lua'
    
    function norm (x, y)
       local n2 = x^2 + y^2
       return 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

     

    Lua 是大小写敏感的.

    注释:单行注释:-- 多行注释:--[[ --]]

    1.4 命令行方式

    -e:直接将命令传入 Lua
    prompt>lua-e"print(math.sin(12))" -->-0.53657291800043 -l:加载一个文件.
    -i:进入交互模式.

    _PROMPT 内置变量作为交互模式的提示符

    prompt> lua -i -e "_PROMPT=' lua> '"
    lua>
    

    Lua 的运行过程,在运行参数之前,Lua 会查找环境变量 LUA_INIT 的值,如果变 量存在并且值为@filename,Lua 将加载指定文件。如果变量存在但不是以@开头,Lua 假定 filename 为 Lua 代码文件并且运行他。利用这个特性,我们可以通过配置,灵活的 设置交互模式的环境。可以加载包,修改提示符和路径,定义自己的函数,修改或者重 名名函数等。

    在运行以前,Lua 使用所有参数构造 arg 表。脚本名索引为 0,脚本的参数从 1 开始 增加。脚本前面的参数从-1 开始减少。

       prompt> lua -e "sin=math.sin" script a b
    

    arg 表如下:

    page18image8792
     
    page18image8952
     
    page18image9112
     
    page18image9272
     
    page18image9432
     
    page18image9592
    prompt> lua -i -e "_PROMPT=' lua> '"
    lua>
    
    page18image10584
     
    page18image10744
     
    page18image10904
     
    page18image11328
     
    page18image11488
     
    page18image12568
     
    page18image13368
     
    page18image14872
    arg[-3] = "lua"
    arg[-2] = "-e"
    arg[-1] = "sin=math.sin"
    arg[0] = "script"
    arg[1] = "a"
    arg[2] = "b"
    
     
  • 相关阅读:
    字体图标
    css精灵图
    css定位
    浮动的清除
    浮动、版心布局
    css 盒子模型
    css三大特性、行高属性、权重
    JSP实现上传文件(或图片)到MySQL
    MySQL 错误. Packet for query is too large (***> 4194304). You can change......
    使用Servlet3.0提供的API实现文件上传到指定位置
  • 原文地址:https://www.cnblogs.com/AbelChen1991/p/3831174.html
Copyright © 2011-2022 走看看