scite没有在弹出窗口ubuntu中显示程序输出

时间:2013-08-05 20:43:47

标签: io lua scite

我在Ubuntu 12.04中通过scite运行lua脚本。当我执行io.read程序时。 例如:(每个命令都在一个单独的行上)

io.write("Please enter a number: ")
user_input = io.read()
print(user_input)

当我执行程序时,我没有单独的弹出对话窗口询问用户输入。

在代码的右侧,我得到以下输出:

> lua5.1 "io_examples.lua"
Please enter a number: nil

我知道这可能听起来很愚蠢,但是如何让弹出输出窗口询问用户的输入?

2 个答案:

答案 0 :(得分:0)

io.read返回的nil可能暗示在阅读过程中发生了错误。您可以通过使用断言:

包围您的io.read语句来检查这一点

local user_input = assert(io.read())

local user_input = assert(io.read("*number"))

我最初的猜测是您收到了:错误的文件描述符,因为未设置标准输入(stdin)。

可在此处找到更多信息:

http://www.lua.org/pil/21.1.html

http://www.lua.org/pil/8.html

答案 1 :(得分:0)

我最终如何正确执行程序是通过ubuntu终端运行它。我只需要cd到程序所在的目录,然后输入“lua”。 我没有得到整洁的弹​​出窗口,但代码执行正确。