#include <stdlib.h> #include <lauxlib.h> #include <lua.h> #include <lualib.h> int main(void) { lua_State *lvm_hnd = lua_open(); luaL_openlibs(lvm_hnd); /* Load a standard Lua function from global table: */ lua_getglobal(lvm_hnd, "print"); /* Push an argument onto Lua C API stack: */ lua_pushstring(lvm_hnd, "您好C API!"); /* Call Lua function with 1 argument and 0 results: */ lua_call(lvm_hnd, 1, 0); lua_close(lvm_hnd); return EXIT_SUCCESS; }
在上面的示例中,我们正在执行以下操作:
如第一个示例所示,创建和设置Lua VM
从全局Lua表获取并将Lua函数推入虚拟堆栈
将字符串"Hello C API"作为输入参数推入虚拟堆栈
指示VM使用已在堆栈中的一个参数调用函数
关闭并清理
注意:
简而言之,这会lua_call()从堆栈中弹出函数及其参数,仅保留结果。
另外,使用Lua保护的呼叫会更安全-lua_pcall()而是。
本文向大家介绍Lua 调用一个函数。,包括了Lua 调用一个函数。的使用技巧和注意事项,需要的朋友参考一下 示例 函数只有在我们可以调用它们时才有用。要调用函数,请使用以下语法: 我们正在调用该print函数。使用参数"Hello, World"。显而易见,这将打印Hello, World到输出流。返回值是可访问的,就像其他任何变量一样。 函数的参数中也接受变量。 可以使用纯净的语法糖来调用期望使
本文向大家介绍Lua编程示例(六): C语言调用Lua函数,包括了Lua编程示例(六): C语言调用Lua函数的使用技巧和注意事项,需要的朋友参考一下 C++端: lua脚本: 运行输出的结果为:
本文向大家介绍Lua中使用.和:调用函数的区别,包括了Lua中使用.和:调用函数的区别的使用技巧和注意事项,需要的朋友参考一下 tb.print和tb:print的含义略微不同,:调用函数会多传递进去一个self进去,差不多相当于OOP里面的成员函数调用. 但是和OOP里面成员函数/非成员函数不同的是,lua里面的非成员函数.调用,他不是静态的. tb对象有一个print function成员,当
主要内容:实例,实例,多返回值,实例,可变参数,实例,实例,实例,实例,实例在Lua中,函数是对语句和表达式进行抽象的主要方法。既可以用来处理一些特殊的工作,也可以用来计算一些值。 Lua 提供了许多的内建函数,你可以很方便的在程序中调用它们,如print()函数可以将传入的参数打印在控制台上。 Lua 函数主要有两种用途: 1.完成指定的任务,这种情况下函数作为调用语句使用; 2.计算并返回值,这种情况下函数作为赋值语句的表达式使用。 函数定义 Lua 编程语言函数定义
在 Lua 中,函数是一种对语句和表达式进行抽象的主要机制。函数既可以完成某项特定的任务,也可以只做一些计算并返回结果。在第一种情况中,一句函数调用被视为一条语句;而在第二种情况中,则将其视为一句表达式。 示例代码: print("hello world!") -- 用 print() 函数输出 hello world! local m = math.max(1, 5) --
在Lua中,函数是对语句和表达式进行抽象的主要方法。既可以用来处理一些特殊的工作,也可以用来计算一些值。 Lua 提供了许多的内建函数,你可以很方便的在程序中调用它们,如print()函数可以将传入的参数打印在控制台上。 Lua 函数主要有两种用途: 1.完成指定的任务,这种情况下函数作为调用语句使用; 2.计算并返回值,这种情况下函数作为赋值语句的表达式使用。 函数定义 Lua 编程语言函数定义