lua解释器 是什么东西? lua 后面加lua文件名为什么不行?

看各种教程 里面都可以直接使用 lua ***.lua 来直接执行***.lua文件
可是在我这个小黑屏lua里面只能dofile来执行lua文件 这是为什么?
好多教程里面都说在lua解释器里面使用lua ***.lua 请问这个lua解释器是什么啊?
请解释的详细点 本人初学且自学..有点PHP语言基础

第1个回答  2013-05-14
看来你看书的时候没看全
如果是在CMD里执行lua文件 前提是你配置了lua环境变量
本身如果你只是想执行lua代码的话 你要安装解释器 这个你都懂
关键就是解释器你有没有了
比较简单的方法 搜索一下luaforwindows 这个可以在windows下直接执行lua程序
但是 要注意 你的代码必须是正确的 如果代码有错误 执行时会出错
地址不提供了 百度google一搜一大把 安装完后 lua文件会变成蓝白色的图标
直接双击可以运行 也可以右键选择edit后 按F5执行 这样可以更清楚的看到输出等内容追问

lua for windows 有的   我说的黑屏不是cmd

这个是我用的小黑屏   我看的一些教程上面  写的"用下面这行开始脚本代码的编写 #!/usr/local/bin/lua 或 #! /usr/bin/env lua  便可以直接调用脚本文件而不需要显式的调用lua解释器了" 两个路径是解释器的所在路径  看着两个路径像是linux的路径  后面的一些就更不懂了...

我就是不明白怎么直接调用lua脚本文件

追答

这个东西 你是开的逐行运行lua代码 一般用不到 但也别删那个exe
我们一般来说 用到lua 3种方法
一 写好代码直接双击文件运行
二 写好代码在编译器里运行
三 写好代码 外部宿主语言调用
前2种方法 要求装有解释器 你现在是已经有了 所以不用再额外装
第3种 流程就比较复杂
针对你的问题 你没说明 调用lua脚本是谁调用 是宿主语言调用吗?(比如C/C++)
你的lua程序要实现什么功能

追问

教程上讲的似乎是在这个小黑屏里面调用啊 我都是照着教程来的...不过不好使...只能用dofile调用lua文件 那么 请问 想用"lua"这个命令调用文件的话 应该怎么弄?

追答

如果是要调用其他脚本dofile是可以
但是我们更推荐require"finename"的调用法
因为这个可以防止重复引用引起的递归问题等
把要调用的脚本和那个lua.exe放在同一个路径下 比如名字叫test.lua
在那个类CMD窗口里输入require"test"
运行 就能执行test.lua里的代码了

本回答被提问者采纳
第2个回答  2013-05-14
Lua 是一个小巧的脚本语言。是巴西里约热内卢天主教大学(Pontifical Catholic University of Rio de Janeiro)里的一个研究小组,由Roberto Ierusalimschy、Waldemar Celes 和 Luiz Henrique de Figueiredo所组成并于1993年开发。 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。Lua由标准C编写而成,几乎在所有操作系统和平台上都可以编译,运行。Lua并没有提供强大的库,这是由它的定位决定的。所以Lua不适合作为开发独立应用程序的语言。Lua 有一个同时进行的JIT项目,提供在特定平台上的即时编译功能。追问

亲 我是想问,“lua解释器”是什么东西?好多教程上提到了这个词,并且使用了 “lua test.lua”这种类似命令来执行一个lua文件,可是我的lua IDE(好像不算IDE,就是一个黑屏lua界面)并不能执行lua命令

追答

lua解释器是能够执行用其他计算机语言编写的程序的系统软件,它是一种翻译程序。它的执行方式是一边翻译一边执行,因此其执行效率一般偏低,但是解释器的实现较为简单,而且编写源程序的高级语言可以使用更加灵活和富于表现力的语法。

追问

可是为什么我无法用lua命令调用lua文件? 可是教程上面都是直接使用lua调用lua文件的 如果我使用lua命令调用lua文件 会给出一个提示 : '=' expected near 'test' 我执行的语句是 lua test.lua

第3个回答  2018-07-18
这个和python是一样的。python一般不编译,直接把源文件给解释器程序执行。解释器程序是python.exe,命令行里使用命令python hello.py会寻找python.exe,然后把hello.py作为参数传递给解释器,解释器会去解释hello.py。同理,lua解释器程序是lua.exe,也是把源文件(xxx.lua)作为参数传入。
解释器和源文件都需要系统去找。当前目录和环境变量里的文件可以找到,其他的要完整路径
相似回答