为了账号安全,请及时绑定邮箱和手机立即绑定

C++中访问redis,用hiredis接口可以指定密码吗?

C++中访问redis,用hiredis接口可以指定密码吗?

慕仙森 2018-11-21 23:18:41
C++中访问redis,用hiredis接口可以指定密码吗
查看完整描述

1 回答

?
当年话下

TA贡献1890条经验 获得超9个赞

在lua API中,调用一个函数的步骤很简单:
1.压入你要调用的函数,使用lua_getglobal。
2.压入调用参数。
3.使用lua_pcall
4.从栈中弹出结果。
举例说明,假设你有这么一个lua函数:
function f (x, y)
return (x^2 * math.sin(y))/(1 - x)
end
那么,我们就可以定义个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_pcall运行出错,那么会返回个非0值。



查看完整回答
反对 回复 2018-12-13
  • 1 回答
  • 0 关注
  • 676 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信