【e良师益友网】在lua API中lua语言编程手机版,调用一个函数的步骤很简单:
1、压入你要调用的函数,使用lua_getgloballua语言编程手机版。
2、压入调用参数lua语言编程手机版。
3、使用lua_pcall 4.从栈中弹出结果lua语言编程手机版。
举例说明lua语言编程手机版,假设你有这么一个lua函数: function f (x, y)
return (x^2 * math.sin(y))/(1 - x)
end
那么lua语言编程手机版,我们就可以定义个c函数来封装这个调用: /* call a function 'f' defined in Lua */
double f (double x, double y) {
double z; lua_getglobal(L, "f"); lua_pushnumber(L, x); lua_pushnumber(L, y); /* do the call (2 arguments, 1 result) */ if (lua_pcall(L, 2, 1, 0) != 0) error(L, "error running function 'f': %s", lua_tostring(L, -1));
if (!lua_isnumber(L, -1)) error(L, "function 'f' must return a number"); z = lua_tonumber(L, -1); lua_pop(L, 1); return z;
lua_pcall在压入结果的之前,会将函数,和参数弹出,如果返回多个结果,第一个最先压入lua语言编程手机版。如果lua_pcall运行出错,那么会返回个非0值。
推荐学习0基础C语言开发教程了解更多c语言程序开发lua语言编程手机版。