1樓:永恆
lua語言是一種類pascal的語言,它不是函式式的程式設計。
函式式程式設計是整個程式是由若干個函式組成,如c、c++等。
我們自編lua程式中可以沒有乙個我們自定義的函式,整個主程式也不能是函式。
還請教一下,在lua語言中如何計算加減法運算? 5
2樓:匿名使用者
例子:include
int main()
;printf("%s\n",a+7);
return 0;
}lua語言中
#include
int main()
;printf("%s\n",a+7); // a+7相當於&a[7],也就是從a的首位址偏移7個位置,結果是:98
return 0;}
3樓:匿名使用者
lua 作為乙個 解釋型指令碼 語言 可以非常容易的 動態執行一些**(也就是根據動態獲取的字串作為**去編譯)。
這樣,很容易寫出 乙個 簡單的輸入型計算器。
local function main ()
io.write("please input a numeric expression: ")
local msg = io.read()
f = loadstring("return "..msg)
print( f() );
endmain()
--[[
input: 1 - 1/3 + 1/5 - 1/7
print: 0.72380952380952
input: "abc".."xyz"
print: abcxyz
input: os.time()
print: 1375383363
input: "hack"..os.execute("echo it's very dangerous.").."code"
print: abcxyz
--]]
但是,如果沒有實現系統函式的許可權和安全性控制的封裝,直接把程式暴漏給使用者,也許這種靈活性 會帶來一些無法挽回的損失
lua中「=」與「==」的區別?(),[ ],{ }的區別
4樓:匿名使用者
1. "=" 是賦值操作,"==" 是判斷兩個值相等關係的操作符號。所以x = 2 是表示把「2「這個值賦給x;x == 2是判斷x 和 「2」 是否相等。
2. 這三個符號的含義不用這麼分吧。()是用在函式的定義和使用中的,比如print("hello"),當然還有一般數學意義上的改變運算優先順序; {} 是用來定義table的,例如 t = ; 是用來索引table元素的,例如 t[1] = 'a' 你還是多看文件學習一下吧,這樣就有感覺了。
另外lua網上的資料比較少,入門可能不是很方便。
lua語言 select()函式疑問
5樓:匿名使用者
先看一下select的使用案例 假設呼叫函式select(5,1,2,3,4,5,6,7,8)
理論上是返回5之後的所有 也就是5,6,7,8但是為什麼你的函式只返回了乙個值呢
首先你要從你的賦值語句開始看
你的輸出語句是print(i,arg) 只輸出了2個引數 i和argi是迴圈變數 從1~4遞增 這個輸出是沒問題了 問題在於arglocal arg=select(i,...)這一句 相當於
local arg = 111,222,333,444local arg = 222,333,444local arg = 333,444
local arg = 444
實際上你每次賦值的時候 多給了很多引數 後面的數字被自動捨棄了所以輸出的時候就只會看到 111 222 333 444
lua裡 像 c裡面的 if(a >= 20 && a <= 100) 這樣的邏輯應該怎麼寫?lua邏輯且有短路
6樓:凌亂楓
if a>=20 and a <= 100 then
--your codeend
7樓:匿名使用者
lua 中的邏輯操作符有 and, or, 以及 not。 和控制結構一樣, 所有的邏輯操作符把 false 和 nil 都作為假, 而其它的一切都當作真。
取反操作 not 總是返回 false 或 true 中的乙個。 與操作符 and 在第乙個引數為 false 或 nil 時 返回這第乙個引數; 否則,and 返回第二個引數。 或操作符or 在第乙個引數不為 nil 也不為 false 時, 返回這第乙個引數,否則返回第二個引數。
and 和 or 都遵循短路規則; 也就是說,第二個運算元只在需要的時候去求值。 這裡有一些例子:
10 or 20 --> 1010 or error() --> 10nil or "a" --> "a"
nil and 10 --> nilfalse and error() --> falsefalse and nil --> falsefalse or nil --> nil10 and 20 --> 20-----------------------------
8樓:java緊挨
if a>=20 and a<=100 then
**.....
end;
程式語言裡的演算法是函式的演算法嗎,程式設計中的演算法是指什麼?
演算法是解決乙個實際問題的有效的步驟 方法。寫程式 函式,依據這種方法進行。比如,排序中的冒泡法,依次比較兩個數,如果他們的順序與要求的順序相反,就互換位置 這句話,就是演算法。定義陣列 變數,用某種程式語言,將這種演算法變成實際可以使用的程式 函式,就是程式設計了。演算法是通用的,本質上與使用哪種...
7脫式計算,能簡算的要簡算,575957脫式計算,能簡算的要簡算
5 7 5 9 5 7 5 7x 1 5 9 5 7x4 9 20 63 希望能幫到你!1 8x9 7 5 7 8能簡算的要簡算 1 8x9 7 5 7 8可以先將裡面的5 7 8化成5 7 1 81 8x9 7 5 7 1 8 1 8 9 7 5 7 1 8 16 7 2 7 1 8x9 7 5 ...
脫式計算,能簡算的用簡算
1 5.5 17.3 6.7 5.5 5.5 17.3 6.7 5.5 24 132 2 1.5 105 1.5 100 5 1.5 100 1.5 5 150 7.5 157.5 3 9.07 22.78 3.4 9.07 6.7 2.37 4 3.8 4.29 2.1 4.2 3.8 4.2 4...