标签: lua

Lua逻辑运算符与其他语言不同吗?

于是我开始瞎搞与Lua的逻辑运算符。如此处所述 print (4 and 5)将返回5print (4 or 5)将返回4。如果您随后切换数字,则表明print (5 and 4)它将返回4。我理解的是,在解释如果是运营商返回的第一个操作数错误,第二个如果这是真的,但什么我是从C ++等语言使用的是print (4 and 5)回报4。如何获得与C ++或类似语言相同的结果?

lua

-1
推荐指数
1
解决办法
200
查看次数

为什么 Arduino IDE 与 NodeMCU 一起工作?

我知道当我们购买 NodeMCU 时,我们会在其中安装 NodeMCU 固件。但是我们为什么能够在这个开发工具包中使用 Arduino IDE(用于 C++ 编程)?

我们如何使用 C++ IDE 来处理基于 Lua 的固件?我这里的概念有什么问题?

c++ lua arduino-ide arduino-uno nodemcu

-1
推荐指数
1
解决办法
912
查看次数

lua中的%s +或%s是什么,如何使用?

我如何在lua中使用%s,或者更好的问题是如何使用它?

所以这是我在尝试使用它和如何工作之前尝试过的方法。

local arg1 = 'lmao'

print('fav string is %arg1')
Run Code Online (Sandbox Code Playgroud)

起初我以为这是用来引用字符串中的字符串或数字而不做类似的事情

print('hello '..name..'!')
Run Code Online (Sandbox Code Playgroud)

有人可以向我提供一些示例或解释,以及如何使用吗?

string lua

-1
推荐指数
1
解决办法
141
查看次数

lua中如何检查url是否有效?

我想检查 url 是否有效,在 lua 中执行此操作的正确正则表达式是什么?我尝试过像这样的正则表达式

string.match('https://stackoverflow.com/', '[a-z]*:\/\/[^ >,;]*')
Run Code Online (Sandbox Code Playgroud)

但出现错误

invalid escape sequence near ''[a-z]*:\/'
Run Code Online (Sandbox Code Playgroud)

更新:

string.match('https://stackoverflow.com/', '[a-z]*://[^ >,;]*')
Run Code Online (Sandbox Code Playgroud)

是正确答案

url lua lua-patterns

-1
推荐指数
1
解决办法
1139
查看次数

检查是否挖掘了魔兽世界

我如何检查玩家是否在"魔兽世界"中挖掘,然后在挖掘完成后再施放一个坐骑?

lua world-of-warcraft

-2
推荐指数
1
解决办法
581
查看次数

love.keyreleased(key)的功能和love.keyboard.isDown一样吗?

love.keyreleased(key)功能是否相同love.keyboard.isDown

例如,我可以声明:

function love.update()

    if love.keyreleased("left") then
            hero = heroLeft
    end
end     
Run Code Online (Sandbox Code Playgroud)

lua love2d

-2
推荐指数
1
解决办法
814
查看次数

计算行数Lua

我正在做一个涉及文件读取的项目,我需要知道文件中的确切行数.有谁知道如何计算文件中的行数而不必读取整个文件?我的意思是Lua中有内置函数吗?提前致谢.

lua count

-2
推荐指数
1
解决办法
3269
查看次数

LuaJIT FFI cdef不理解'课堂'?

class Myuser * MyClient_GetMyUser(AUser aUser);
Run Code Online (Sandbox Code Playgroud)

这是尝试使用ffi.cdef声明该函数的错误:

Error: dllImport.lua:861: declaration specifier expected near 'class' at line 20
Run Code Online (Sandbox Code Playgroud)

这怎么可能?如果我必须在cdef中这样做,我将如何宣布'课堂'?

c c++ lua ffi luajit

-2
推荐指数
1
解决办法
593
查看次数

"无长"快速排序算法

我一直在研究排序算法.到目前为止,我发现的所有排序算法要么依赖于已知长度(几乎所有排序算法.我不能使用它们,因为"正确"长度是O(n)),或者比快速排序慢(例如插入分类).

在Lua中,有两个长度概念:

  • 适当的序列长度
    • 是O(n)
    • 由ipairs等使用
  • 序列长度
    • 是O(log n)
    • 有洞(零值)
    • 由table.insert等使用

我已经研究过heapsort,但是heapsort需要构建一个堆,然后排序.它不能同时作为单个操作,这意味着它仍然存在O(n)长度问题.

使用插入排序,您只需运行插入排序算法,直到您点击第一个nil.这只排序表的"正确序列"部分(即,从1到n的键没有任何nil值),但插入排序比quicksort慢.

是否有任何就地排序算法,如插入排序,不依赖于长度,但性能可与快速排序相媲美?

示例插入排序代码(在维基百科的帮助下):

function isort(t)
  -- In-place insertion sort that never uses the length operator.
  -- Stops at the first nil, as expected. Breaks if you use "for i = 1, #t do"
  for i in ipairs(t) do
      local j = i
      while j > 1 and t[j-1] > t[j] do
          t[j], t[j-1] = t[j-1], t[j]
          j = j - 1
      end
  end
end

local …
Run Code Online (Sandbox Code Playgroud)

sorting algorithm lua in-place time-complexity

-2
推荐指数
1
解决办法
157
查看次数

Lua中的"for var = 1,2"

这种循环在Lua中做了什么?

for count = 1, 2 do
    -- do stuff
end
Run Code Online (Sandbox Code Playgroud)

该变量count不在循环体中使用.

lua for-loop

-2
推荐指数
1
解决办法
62
查看次数