Lua中是否有等效的scanf函数?

如标题所述:

Lua 中是否有等效的 scanf 函数?

我的意思是,我想有这样的语法:

word_typed = lua_scanf()

一旦我写了一个字符串(比如说"123是完美的数字"),我就有了字符串"123是完美的数字"。

提前感谢您的帮助

附言:如果您愿意,您可以提供 LUA C API 解决方案!:P

点赞
用户2157240
用户2157240

match http://lua-users.org/wiki/StringLibraryTutorial 看起来对我来说很接近于 C 语言中的 scanf。

2013-04-15 16:21:30
用户841581
用户841581

以下脚本(在 Lua 5.1.4 中测试,应该适用于 5.2)执行了你在 Shmil-The-Cat 的答案评论中描述的操作:

print("Please enter your name:")
name = io.read()
print("You entered '" .. name .. "'")

io.read 函数有一个默认参数 "*l",这意味着从打开的文件中读取下一行,跳过行结束符。默认情况下,打开的文件为 stdin,但是您可以使用 io.open 文件更改它。

有关 io 库的更多详细信息,请参阅在线 Lua 参考手册的第 6.8 节,地址为 http://www.lua.org/manual/5.2/manual.html#6.8。您可能还想阅读《Lua 程序设计》(PIL)的 I/O 章节,地址为 http://www.lua.org/pil/21.html

2013-04-15 17:39:31