日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
通過例子學(xué)習(xí)Lua(2)—Lua流程控制

1. 函數(shù)的使用

成都創(chuàng)新互聯(lián)公司專注于企業(yè)營(yíng)銷型網(wǎng)站、網(wǎng)站重做改版、三水網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5場(chǎng)景定制、商城系統(tǒng)網(wǎng)站開發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為三水等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。

以下程序演示了如何在Lua中使用函數(shù), 及局部變量

例e02.lua

 
 
 
  1. -- functions 
  2. function pythagorean(a, b) 
  3. local c2 = a^2 + b^2 
  4. return sqrt(c2) 
  5. end 
  6. print(pythagorean(3,4)) 

運(yùn)行結(jié)果

5

程序說明

在Lua中函數(shù)的定義格式為:

function 函數(shù)名(參數(shù))

...

end

與Pascal語言不同, end不需要與begin配對(duì), 只需要在函數(shù)結(jié)束后打個(gè)end就可以了.

本例函數(shù)的作用是已知直角三角形直角邊, 求斜邊長(zhǎng)度. 參數(shù)a,b分別表示直角邊長(zhǎng),

在函數(shù)內(nèi)定義了local形變量用于存儲(chǔ)斜邊的平方. 與C語言相同, 定義在函數(shù)內(nèi)的代

碼不會(huì)被直接執(zhí)行, 只有主程序調(diào)用時(shí)才會(huì)被執(zhí)行.

local表示定義一個(gè)局部變量, 如果不加local剛表示c2為一個(gè)全局變量, local的作用域

是在最里層的end和其配對(duì)的關(guān)鍵字之間, 如if ... end, while ... end等。全局變量的

作用域是整個(gè)程序。

2. 循環(huán)語句

例e03.lua

 
 
 
  1. -- Loops 
  2. for i=1,5 do 
  3. print("i is now " .. i) 
  4. end 

運(yùn)行結(jié)果

i is now 1

i is now 2

i is now 3

i is now 4

i is now 5

程序說明

這里偶們用到了for語句

for 變量 = 參數(shù)1, 參數(shù)2, 參數(shù)3 do

循環(huán)體

end

變量將以參數(shù)3為步長(zhǎng), 由參數(shù)1變化到參數(shù)2

例如:

for i=1,f(x) do print(i) end

for i=10,1,-1 do print(i) end

這里print("i is now " .. i)中,偶們用到了..,這是用來連接兩個(gè)字符串的,

偶在(1)的試試看中提到的,不知道你們答對(duì)了沒有。

雖然這里i是一個(gè)整型量,Lua在處理的時(shí)候會(huì)自動(dòng)轉(zhuǎn)成字符串型,不需偶們費(fèi)心。

3. 條件分支語句

例e04.lua

 
 
 
  1. -- Loops and conditionals 
  2.  for i=1,5 do 
  3.  print(“i is now “ .. i) 
  4.  if i < 2 then 
  5.  print(“small”) 
  6.  elseif i < 4 then 
  7.  print(“medium”) 
  8.  else 
  9.  print(“big”) 
  10.  end 
  11.  end 

運(yùn)行結(jié)果

i is now 1

small

i is now 2

medium

i is now 3

medium

i is now 4

big

i is now 5

big

程序說明

if else用法比較簡(jiǎn)單, 類似于C語言, 不過此處需要注意的是整個(gè)if只需要一個(gè)end,

哪怕用了多個(gè)elseif, 也是一個(gè)end.

例如

 
 
 
  1. if op == "+" then 
  2. r = a + b 
  3. elseif op == "-" then 
  4. r = a - b 
  5. elseif op == "*" then 
  6. r = a*b 
  7. elseif op == "/" then 
  8. r = a/b 
  9. else 
  10. error("invalid operation") 
  11. end 

4.試試看

Lua中除了for循環(huán)以外, 還支持多種循環(huán), 請(qǐng)用while...do和repeat...until改寫本文中的for程序

原文鏈接:http://tech.it168.com/j/2008-02-14/200802141336501.shtml


分享名稱:通過例子學(xué)習(xí)Lua(2)—Lua流程控制
文章路徑:http://www.dlmjj.cn/article/cdpepci.html