首页 > 其他 > 详细

lua调用cpp函数

时间:2015-10-16 20:52:26      阅读:348      评论:0      收藏:0      [点我收藏+]




extern "C"{
#include "src/lualib.h"
#include "src/lauxlib.h"
#include "src/lua.h"

}

#include "iostream"
using namespace std;



int get_sum(lua_State *l)
{
	int n = lua_gettop(l);/*获得lua调用时参数个数*/

	double sum = 0;

	for (int i = 1; i <= n; i++)
	{
		if (lua_isnumber(l, i))
		{
			sum += lua_tonumber(l, i);/*获得参数*/

		}
		else
		{
			lua_pushstring(l, "error not a number");
			return 1;
		}
	}

	lua_pushnumber(l, sum);/*返回给lua*/


	return 1;/*返回 返回值个数*/
}


int main()
{
	lua_State *l = lua_open();

	luaL_openlibs(l);

	lua_register(l, "get_sum", get_sum);


	luaL_dofile(l, "a.lua");

	lua_close(l);

	system("pause");
	return 0;
}





print("sum is "..get_sum(1,2,"3"))


lua调用cpp函数

原文:http://my.oschina.net/kkkkkkkkkkkkk/blog/518141

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!