#include <iostream>
#include <string>
#include <cstdio>
using namespace std;
extern "C" {
#include "lua.h"
#include "lualib.h"
#include "lauxlib.h"
#pragma comment(lib,"lua5.1.lib")
}
/* Lua解释器指针 */
lua_State* L;
int main ( int argc, char *argv[] )
{
/* 初始化Lua */
L = lua_open();
/* 载入Lua基本库 */
luaL_openlibs(L);
/* 载入语句块 */
if(luaL_loadfile(L, "2.lua") || lua_pcall(L, 0, 0, 0))
{
printf("载入错误\n");
printf("%s\n",lua_tostring(L, -1));
goto EXIT;
}
/*
function Print(n,m)
print(n..","..m)
return "1","2"
end
*/
lua_getglobal(L, "Print");
lua_pushstring(L, "test1");
lua_pushstring(L, "test2");
lua_pcall(L,2,2,0);
printf("%s,%s\n",lua_tostring(L, -2),lua_tostring(L, -1));
EXIT:
/* 清除Lua */
lua_close(L);
/* 暂停 */
printf( "Press enter to exit…" );
getchar();
return 0;
}
#include <string>
#include <cstdio>
using namespace std;
extern "C" {
#include "lua.h"
#include "lualib.h"
#include "lauxlib.h"
#pragma comment(lib,"lua5.1.lib")
}
/* Lua解释器指针 */
lua_State* L;
int main ( int argc, char *argv[] )
{
/* 初始化Lua */
L = lua_open();
/* 载入Lua基本库 */
luaL_openlibs(L);
/* 载入语句块 */
if(luaL_loadfile(L, "2.lua") || lua_pcall(L, 0, 0, 0))
{
printf("载入错误\n");
printf("%s\n",lua_tostring(L, -1));
goto EXIT;
}
/*
function Print(n,m)
print(n..","..m)
return "1","2"
end
*/
lua_getglobal(L, "Print");
lua_pushstring(L, "test1");
lua_pushstring(L, "test2");
lua_pcall(L,2,2,0);
printf("%s,%s\n",lua_tostring(L, -2),lua_tostring(L, -1));
EXIT:
/* 清除Lua */
lua_close(L);
/* 暂停 */
printf( "Press enter to exit…" );
getchar();
return 0;
}