天天看点

Lua脚本

今天翻电脑里面的文件突然发现了有地方用的lua脚本就突然想弄一下

首先去百度查了一下可以用来做啥

嗯…

发现了这么一段话:

其设计目的是为了通过灵活嵌入应用程序中从而为应用程序提供灵活的扩展和定制功能。

Lua脚本可以很容易的被C/C++ 代码调用,也可以反过来调用C/C++的函数。

好像这个脚本还挺好用的样子→_→

输出函数是:

print("Hello World!")

(好像和python3一样)

注释是:

-- 和--[[ ]]--

感觉有点长

关键词好像所有语言都差不多

Lua脚本

变量默认是全局变量并且前面不用加变量类型

局部变量需要在前面加 local

赋值语句是

=

这个倒是和c语言一样

可以

x, y = y, x

这样赋值和python差不多

循环语句是这个样子的:

while( true )
do
   print("Run")
end
           

感觉这种结构在工控里面用的比较多,好像某个触摸屏的脚本就是这样的语法

判断语句是这个样子

if(0)
then
    print("true")
else
	print("false")
end
           

发现这个脚本里面居然0是Ture!!! 感觉一不小心就会写错的样子emm

函数是这样声明的:

function add(num1,num2,functionPrint)
   result = num1 + num2
   return result
end
           

所有的类型都不用声明直接变量名就好

function average(...)
   result = 0
   local arg={...} --存入一个表中
   for i,v in ipairs(arg) do
      result = result + v
   end
   print("总共传入 " .. #arg .. " 个数")
   return result/#arg
end
           

发现连接字符串用的

..

并且

#表

能获取表里面变量的个数

还可以用select("#",…) 直接获取输入的变量数

运算符倒是和c语言没声明区别

除了不等于是

~=

不是

!=

接下来数for语句

for i= -2, 2 do
   array[i] = i *2
end

for i=1,3 do
   array[i] = {}
      for j=1,3 do
         array[i][j] = i*j
      end
end
           

for语句好像是制定一个变量然后制定开始和结束的值进行1的累加的

今天再了解了解lua,明天发c/c++和lua是怎么互调的看看能怎么使用lua脚本