自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

詳解關(guān)于Lua腳本語(yǔ)法說(shuō)明學(xué)習(xí)教程

移動(dòng)開(kāi)發(fā) iOS
關(guān)于Lua腳本語(yǔ)法說(shuō)明學(xué)習(xí)教程是本文要介紹的內(nèi)容,主要是來(lái)學(xué)習(xí)LUA的腳本語(yǔ)言。Lua 的語(yǔ)法比較簡(jiǎn)單,學(xué)習(xí)起來(lái)也比較省力,但功能卻并不弱。

關(guān)于Lua腳本語(yǔ)法說(shuō)明學(xué)習(xí)教程是本文要介紹的內(nèi)容,主要是來(lái)學(xué)習(xí)LUA腳本語(yǔ)言。Lua 的語(yǔ)法比較簡(jiǎn)單,學(xué)習(xí)起來(lái)也比較省力,但功能卻并不弱。

所以,我只簡(jiǎn)單的歸納一下Lua的一些語(yǔ)法規(guī)則,使用起來(lái)方便好查就可以了。估計(jì)看完了,就懂得怎么寫(xiě)Lua程序了。

在Lua中,一切都是變量,除了關(guān)鍵字。

1、首先是注釋

寫(xiě)一個(gè)程序,總是少不了注釋的。

在Lua中,你可以使用單行注釋和多行注釋。

單行注釋中,連續(xù)兩個(gè)減號(hào)"--"表示注釋的開(kāi)始,一直延續(xù)到行末為止。相當(dāng)于C++語(yǔ)言中的"//"。

多行注釋中,由"--[["表示注釋開(kāi)始,并且一直延續(xù)到"]]"為止。這種注釋相當(dāng)于C語(yǔ)言中的""。在注釋當(dāng)中,"[["和"]]"是可以嵌套的(在lua5.1中,中括號(hào)中間是可以加若干個(gè)"="號(hào)的,如 [==[ ... ]==]),見(jiàn)下面的字符串表示說(shuō)明。

2、Lua編程

經(jīng)典的"Hello world"的程序總是被用來(lái)開(kāi)始介紹一種語(yǔ)言。在Lua中,寫(xiě)一個(gè)這樣的程序很簡(jiǎn)單:

  1. print("Hello world") 

在Lua中,語(yǔ)句之間可以用分號(hào)";"隔開(kāi),也可以用空白隔開(kāi)。一般來(lái)說(shuō),如果多個(gè)語(yǔ)句寫(xiě)在同一行的話(huà),建議總是用分號(hào)隔開(kāi)。

Lua 有好幾種程序控制語(yǔ)句,如下圖:

詳解關(guān)于Lua腳本語(yǔ)法說(shuō)明學(xué)習(xí)教程

注意一下,for的循環(huán)變量總是只作用于for的局部變量;當(dāng)省略步進(jìn)值時(shí),for循環(huán)會(huì)使用1作為步進(jìn)值。

使用break可以用來(lái)中止一個(gè)循環(huán)。

相對(duì)C語(yǔ)言來(lái)說(shuō),Lua有幾個(gè)地方是明顯不同的,所以面要特別注意一下:

.語(yǔ)句塊

語(yǔ)句塊在C中是用"{"和"}"括起來(lái)的,在Lua中,它是用do 和 end 括起來(lái)的。比如:

  1. do print("Hello") end 

可以在 函數(shù) 中和 語(yǔ)句塊 中定局部變量。

.賦值語(yǔ)句

賦值語(yǔ)句在Lua被強(qiáng)化了。它可以同時(shí)給多個(gè)變量賦值。

例如:

a,b,c,d=1,2,3,4

甚至是:

a,b=b,a  -- 多么方便的交換變量功能啊。

在默認(rèn)情況下,變量總是認(rèn)為是全局的。假如需要定義局部變量,則在第一次賦值的時(shí)候,需要用local說(shuō)明。比如:

local a,b,c = 1,2,3  -- a,b,c都是局部變量

.?dāng)?shù)值運(yùn)算

和C語(yǔ)言一樣,支持 +, -, *, /。但Lua還多了一個(gè)"^"。這表示指數(shù)乘方運(yùn)算。比如2^3 結(jié)果為8, 2^4結(jié)果為16。

連接兩個(gè)字符串,可以用".."運(yùn)處符。如:

  1. "This a " .. "string." -- 等于 "this a string" 

詳解關(guān)于Lua腳本語(yǔ)法說(shuō)明學(xué)習(xí)教程

所有這些操作符總是返回true或false。

對(duì)于Table,F(xiàn)unction和Userdata類(lèi)型的數(shù)據(jù),只有 == 和 ~=可以用。相等表示兩個(gè)變量引用的是同一個(gè)數(shù)據(jù)。比如:

  1. a={1,2}  
  2. b=a 
  3. print(a==b, a~=b)  --輸出 true, false  
  4. a={1,2}  
  5. b={1,2}  
  6. print(a==b, a~=b)  --輸出 false, true 

.邏輯運(yùn)算

and, or, not

其中,and 和 or 與C語(yǔ)言區(qū)別特別大。

在這里,請(qǐng)先記住,在Lua中,只有false和nil才計(jì)算為false,其它任何數(shù)據(jù)都計(jì)算為true,0也是true!

and 和 or的運(yùn)算結(jié)果不是true和false,而是和它的兩個(gè)操作數(shù)相關(guān)。

a and b:如果a為false,則返回a;否則返回b

a or b:如果 a 為true,則返回a;否則返回b

舉幾個(gè)例子:

  1. print(4 and 5) --輸出 5  
  2. print(nil and 13) --輸出 nil  
  3. print(false and 13) --輸出 false  
  4. print(4 or 5) --輸出 4  
  5. print(false or 5) --輸出 5 

在Lua中這是很有用的特性,也是比較令人混洧的特性。

我們可以模擬C語(yǔ)言中的語(yǔ)句:x = a? b : c,在Lua中,可以寫(xiě)成:x = a and b or c。

最有用的語(yǔ)句是: x = x or v,它相當(dāng)于:if not x then x = v end 。

.運(yùn)算符優(yōu)先級(jí),從低到高順序如下圖:

詳解關(guān)于Lua腳本語(yǔ)法說(shuō)明學(xué)習(xí)教程

3、關(guān)鍵字

關(guān)鍵字是不能做為變量的。Lua的關(guān)鍵字不多,就以下幾個(gè):

詳解關(guān)于Lua腳本語(yǔ)法說(shuō)明學(xué)習(xí)教程

小結(jié):詳解關(guān)于Lua腳本語(yǔ)法說(shuō)明學(xué)習(xí)教程的內(nèi)容介紹完了,希望通過(guò)本文的學(xué)習(xí)能對(duì)你有所幫助!

責(zé)任編輯:zhaolei 來(lái)源: 互聯(lián)網(wǎng)
相關(guān)推薦

2011-08-25 15:41:42

Lua源碼

2011-08-23 17:06:03

2010-01-07 13:11:09

設(shè)置JSON

2010-03-05 13:40:29

Android Vie

2011-08-23 15:34:56

Lua模式 匹配

2011-08-24 14:14:13

LUA環(huán)境 配置

2011-08-24 11:03:33

LUA環(huán)境 安裝

2011-08-23 16:37:05

Lua數(shù)學(xué)庫(kù)

2011-08-24 15:42:38

LUA源代碼

2011-08-24 15:34:44

MinGWLua環(huán)境配置

2011-08-24 17:09:35

LUA閉包函數(shù)

2011-09-02 13:51:00

PhoneGap框架HTML5

2011-08-24 11:08:09

Lua

2010-01-07 16:09:04

學(xué)習(xí)JSON

2011-08-23 17:42:42

Lua腳本

2011-08-22 18:08:09

Lua腳本

2011-08-23 16:59:16

C++LUA腳本LUA API

2011-09-01 16:45:15

J2MELua

2011-08-25 10:07:24

Lua 5.0函數(shù)編譯器

2011-08-24 13:27:07

Lua 游戲C接口腳本
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)