看了 b 站回顾去年 7 月份的崩溃问题,
https://www.bilibili.com/read/cv17521097 ,聚焦在 lua 函数的参数校验和死循环上,但本地未能复现,有大神知道怎么回事吗? (第一次写 lua ,没有经验)
代码:
local _gcd
_gcd = function (a, b)
if b == 0 then
return a
end
return _gcd(b, a % b)
end
print(_gcd(123, "0"))
使用 VS Code 编写和运行, 在 a % b 时就直接退出了,并没有造成死循环:
lua: attempt to perform 'n%0'
stack traceback:
[C]: in metamethod 'mod'
/Users/.../lua_bilibug.lua:21: in local '_gcd'
/Users/.../lua_bilibug.lua:24: in main chunk
[C]: in ?
其次,入参 b 是 ip 地址是什么意思?为什么 ip 地址会计算 GCD 呢?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://www.v2ex.com/t/868332
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.