最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Lua中數(shù)字for循環(huán)實例

 更新時間:2015年04月23日 10:55:11   投稿:junjie  
這篇文章主要介紹了Lua中數(shù)字for循環(huán)實例,本文直接給出數(shù)字循環(huán)代碼示例,并探討了改變控制變量的一些問題,需要的朋友可以參考下

看以下代碼:

復制代碼 代碼如下:

for i=1,2 do 
  print(i) 
  i=3 
end 

輸出是什么?如果習慣了C/C++語言,會覺得因為改變了控制變量i為3,所以在執(zhí)行第二次循環(huán)體之前判斷不通過,所以輸出是1。
但結(jié)果輸出是1和2,即雖然改變了i,但循環(huán)還是執(zhí)行了2次。這是為什么呢?

看了lua的源代碼,發(fā)現(xiàn)在語法分析階段,表達式中的i(也叫控制變量)和循環(huán)體中的i并不是一個值,其實表達式中的i叫internal index,循環(huán)體中的i叫external index。

所以在循環(huán)體中并沒有改變表達式中的i的值。

至于為什么lua要這樣做,估計是為了安全吧,怕在循環(huán)體中不經(jīng)意地改變了表達式的i,從而產(chǎn)生bug。

另外,在Progammming in Lua一書中也提到不要在循環(huán)體內(nèi)修改控制變量(實際修改的是external index)的值,否則會有不可預知的結(jié)果。

相關文章

  • Lua協(xié)程(coroutine)程序運行分析

    Lua協(xié)程(coroutine)程序運行分析

    這篇文章主要介紹了Lua協(xié)程(coroutine)程序運行分析,本文講解分析了一段lua 協(xié)程代碼是如何運行的,需要的朋友可以參考下
    2015-05-05
  • Lua模塊與包學習筆記

    Lua模塊與包學習筆記

    這篇文章主要介紹了Lua模塊與包學習筆記,本文講解了加載模塊、加載機制等內(nèi)容,需要的朋友可以參考下
    2014-12-12
  • Lua中的控制結(jié)構(gòu)(流程控制)簡明總結(jié)

    Lua中的控制結(jié)構(gòu)(流程控制)簡明總結(jié)

    這篇文章主要介紹了Lua中的控制結(jié)構(gòu)(流程控制)簡明總結(jié),本文講解了IF、repeat、while、for、break、return等語句,需要的朋友可以參考下
    2014-10-10
  • lua 基礎教程

    lua 基礎教程

    Lua 的語法比較簡單,學習起來也比較省力,但功能卻并不弱。所以,我只簡單的歸納一下Lua的一些語法規(guī)則,使用起來方便好查就可以了。估計看完了,就懂得怎么寫Lua程序了。
    2015-09-09
  • Lua教程(四):在Lua中調(diào)用C語言、C++的函數(shù)

    Lua教程(四):在Lua中調(diào)用C語言、C++的函數(shù)

    這篇文章主要介紹了Lua教程(四):在Lua中調(diào)用C語言、C++的函數(shù),本文給出了多個示例講解如何在Lua中調(diào)用C/C++寫的函數(shù),需要的朋友可以參考下
    2014-09-09
  • 淺析Lua編程中的異常處理

    淺析Lua編程中的異常處理

    這篇文章主要介紹了淺析Lua編程中的異常處理,是Lua入門學習中的基礎知識,要的朋友可以參考下
    2015-05-05
  • Lua之wrap函數(shù)用法示例

    Lua之wrap函數(shù)用法示例

    這篇文章主要介紹了Lua之wrap函數(shù)用法示例,本文同時總結(jié)了wrap和Create的區(qū)別,需要的朋友可以參考下
    2015-04-04
  • Lua UnPack函數(shù)用法實例

    Lua UnPack函數(shù)用法實例

    這篇文章主要介紹了Lua UnPack函數(shù)用法實例,unpack它接受一個數(shù)組(table)作為參數(shù),并默認從下標1開始返回數(shù)組的所有元素,需要的朋友可以參考下
    2015-04-04
  • Lua教程(二):C++和Lua相互傳遞數(shù)據(jù)示例

    Lua教程(二):C++和Lua相互傳遞數(shù)據(jù)示例

    這篇文章主要介紹了Lua教程(二):C++和Lua相互傳遞數(shù)據(jù)示例,本文主要講解了基本數(shù)據(jù)類型的傳遞,比如整形(int)、字符串(string)、數(shù)字(number)及bool值,需要的朋友可以參考下
    2014-09-09
  • Lua中設置table為只讀屬性的方法詳解

    Lua中設置table為只讀屬性的方法詳解

    這篇文章主要給大家介紹了關于Lua中設置table為只讀屬性的方法,文中通過示例代碼介紹的非常詳細,對大家具有一定的參考學習價值,需要的朋友們下面來一起看看吧。
    2017-07-07

最新評論

长汀县| 陈巴尔虎旗| 苍溪县| 池州市| 梅河口市| 云龙县| 濮阳县| 乌拉特后旗| 曲沃县| 米林县| 布拖县| 台湾省| 陇南市| 海晏县| 宁夏| 洪泽县| 南通市| 山西省| 读书| 孝感市| 北川| 金秀| 扶沟县| 收藏| 安远县| 濉溪县| 南木林县| 桃源县| 忻城县| 杂多县| 霍城县| 银川市| 永善县| 云阳县| 宁陕县| 边坝县| 迭部县| 辽中县| 荔波县| 辽中县| 辽阳县|