婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Lua函數用法研究

Lua函數用法研究

熱門標簽:衡水外呼線路解決 杞縣地圖標注app 外呼系統一天耗費多少流量 艾比利外呼系統 昆明電話外呼系統好么 海口智能語音電銷機器人好用嗎 陜西便宜電銷機器人軟件 免費門店地圖標注注冊入駐 電話機器人每天搜索多少次

在Lua 基本語法快速入門 中有涉及到函數的用法,但只是普通的應用,并沒有深成次的研究一下,介于函數用的還是比較多的就專門做個專題研究一下~ 
 
一、函數、變量的用法

函數的定義用關鍵字function 。然后加函數名和變量。注意后面沒有do。最后以end結束。

在函數中的變量默認是全局變量,但通常情況下函數中的變量都是在函數中有效的。所以要在聲明的時候加上"local” 標明只在局部有效。
二、返回多個結果值

在Lua中的函數可以返回多個返回值。這與C等語言有很大的不同。因為從根本上講Lua支持多賦值。

我猜測在內部運行時,多個返回值被封裝到了一個table中。然后在賦值時再按順序取出。
看這個示例:             

function max(a) 
 local mi = 1 
 local m = a[mi] 
 for i,val in ipairs(a) do  --其中i為順序位置,val為相應的值 
  print("i= "..i.."val="..val) 
  if val >m then 
   mi = i 
   m = val 
  end 
 end 
 return m,mi 
end 
 
print(max({8,10,23,12,5})) 

   

這個函數的作用是返回一個數列中最大的值和下標。

在實際應用的過程中,在C中調用lua_pcall(L,0,2,0) 即可接受這兩個返回值入棧,然后通過 lua_tonumber(L,-1) 和 lua_tonumber(L,-2)即可
三、可變參數

Lua 函數可以接受可變數目的參數,和 C 語言類似在函數參數列表中使用三點(...)表示函數有可變的參數。

Lua 將函數的參數放在一個叫 arg 的表中,除了參數以外,arg表中還有一個域 n 表示參數的個數。

例如:
 

function myprint(...) 
 local printResult = ""  --如果不顯式聲明,程序會自動檢查全局的變量,會找不到出錯 
 print(arg.n) 
 for i,v in ipairs(arg) do 
  printResult = printResult..tostring(v)..'\t' 
 end 
 printResult=printResult..'\n' 
 return printResult 
end 
 
print(myprint(2,4,6,'2es')) 

標簽:臨滄 南京 西寧 ???/a> 泰安 營口 宿遷 昌都

巨人網絡通訊聲明:本文標題《Lua函數用法研究》,本文關鍵詞  Lua,函數,用法,研究,Lua,函數,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Lua函數用法研究》相關的同類信息!
  • 本頁收集關于Lua函數用法研究的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 黄骅市| 乌审旗| 瓦房店市| 启东市| 神池县| 徐州市| 江孜县| 肥乡县| 西充县| 南投县| 靖州| 乌兰察布市| 西贡区| 波密县| 抚顺市| 兴海县| 建宁县| 遵义市| 合山市| 乌什县| 读书| 抚宁县| 营口市| 宜兰市| 岚皋县| 彭水| 右玉县| 长白| 永兴县| 铜川市| 渝北区| 阿尔山市| 庆元县| 孟津县| 合阳县| 唐山市| 玛沁县| 甘谷县| 海丰县| 邳州市| 天长市|