首页 > 其他 > 详细

深入浅出游戏算法(3)-lua深度剖析(2)

时间:2014-02-11 22:56:40      阅读:503      评论:0      收藏:0      [点我收藏+]

一、基础

1hello,world

在解释器状态下,输入

print("hello,world")

如下所示:

Lua 5.2.3  Copyright (C) 1994-2013 Lua.org, PUC-Rio

> print("hello,world")

hello,world

hello,world中我们可以看到这种语言类似于C语言,至少和C语言一样是用print输出。但在lua中每条语句的结尾处可以使用“;”号表示结束,也可以不使用它,语句之间可以断行,用不着断行符。下面这2条语句也可以正常运行:

(1)print("hello,world");

2> print(

     >> "hello,world"

     >> )

但不要试图在字符串中断行,将出错:

> print("hell

>> o,world")

stdin:1: unfinished string near ‘"hell‘

2、运行外部程序

lua 文件名

lua hello.lua

比如:

dp@dp:~ % lua hello.lua

hello,world

dp@dp:~ % 

3、通过lua命令行的“-e”选项直接运行代码

dp@dp:~ % lua -e"a=5print(a)"

5

dp@dp:~ % 

4、注释的使用

麦好的AI乐园博客所有内容是原创,如果转载请注明来源

http://blog.csdn.net/myhaspl/


   下面代码通过循环完成累加计算,在lua,可以用“--”表示行注释的开始,用“--[[”和“--]]”表示块注释。

dp@dp:~ % cat lj.lua

--[[

code:myhaspl@qq.com

date:2014-02-11

--]]

sum=0

n=20

for i=1,n do

sum=sum+i;--通过循环完成累加

end

print(sum)

运行

dp@dp:~ % lua lj.lua

210

dp@dp:~ % 

5、脚本启动参数

在脚本启动时,可以向脚本传递参数,参数将放在arg的全局变量中。

dp@dp:~ % cat cs.lua

print("索引为-2的参数")

print(arg[-2])

print("索引为-1的参数")

print(arg[-1])

print("索引为0的参数")

print(arg[0])

print("索引为1的参数")

print(arg[1])

print("索引为2的参数")

print(arg[2])

dp@dp:~ % 

运行:

dp@dp:~ % lua -e "a=66 print(a)" cs.lua 20 10

66

索引为-2的参数

-e

索引为-1的参数

a=66 print(a)

索引为0的参数

cs.lua

索引为1的参数

20

索引为2的参数

10

6、下面将累加程序修改一下,可以自由计算任意值的累加和:

dp@dp:~ % cat lj.lua

--[[

code:myhaspl@qq.com

date:2014-02-11

--]]

sum=0

n=tonumber(arg[1])--取得启动参数

for i=1,n do

sum=sum+i;--通过循环完成累加

end

print(n.."累加:"..sum)

麦好的AI乐园博客所有内容是原创,如果转载请注明来源

http://blog.csdn.net/myhaspl/


上述程序中,tonumber将字符串转为数字,传递的脚本启动参数为字符串型,此外,“..”表示完成字符串拼接。

运行:

dp@dp:~ % lua lj.lua 4

4累加:10

dp@dp:~ % lua lj.lua 9

9累加:45

dp@dp:~ % lua lj.lua 2

2累加:3

dp@dp:~ % lua lj.lua 20

20累加:210

 

 

 

 

深入浅出游戏算法(3)-lua深度剖析(2)

原文:http://blog.csdn.net/myhaspl/article/details/19068739

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!