-1

这一直困扰着我很长时间,我一直在制作一个程序,如果你输入某个密码,它就会简单地执行一个动作。我不断收到错误消息说“:4:''预期或“如果预期声明”请帮助!

 textutils.SlowPrint("type the password")
--This is a W.I.P and it is in a basic stage!
pass = ImCool
setCursorPos.(4,5)
input.read(*)
--problem is here
if input = pass then
print("You did it"!)
4

2 回答 2

1

当您尝试检查是否相等时,请使用==运算符,如下所示:

if input == pass then
    print("You did it")
end

你现在正在使用=

您的代码还有其他拼写错误 - 后面有一个.setCursorPos并且!在双引号之外。ImCool- 这是一个符号还是一个字符串?如果它是一个字符串,它应该是双引号。

我不确定那条input.read(*)线 - 它似乎不对,但我有一段时间没有使用 Lua。我记得使用io.read()在 Lua 中获取命令行输入。

于 2013-09-18T21:52:49.353 回答
0

我不是 lua 专家,但看起来你应该ImCool在将它分配给时加上引号pass

pass = "ImCool"

我知道您的问题发生在后面的代码行中,但是像这样的错误可能会弄乱解析器。

查看http://lua-users.org/wiki/LuaTypesTutorial上的字符串部分以初始化字符串变量。

另外,我不知道你复制代码时它是否被切断,但你可能需要end在你的 if 语句之后。您也可能打算使用==运算符而不是=if 语句。有关详细信息,请参见http://www.lua.org/pil/4.3.1.html

于 2013-09-18T21:59:55.327 回答