c++呼び出しlua
VCがLUAファイルをコンパイルするには、まずVCプログラミング環境を構成する必要があります.私はVC 6を使っています.0,lua 5.1.4版
まず、luaの「lua.h」、「lualib.h」、「lauxlib.h」の3つをvcプログラムincludeフォルダの下に置きます.
次にluaのlua 5を.1.libはlibフォルダの下に置けばOK
次に、私が書いた小さな例を見てみましょう.
a.cpp
LUAファイル
まず、luaの「lua.h」、「lualib.h」、「lauxlib.h」の3つをvcプログラムincludeフォルダの下に置きます.
次にluaのlua 5を.1.libはlibフォルダの下に置けばOK
次に、私が書いた小さな例を見てみましょう.
a.cpp
#include "windows.h"
extern "C"{
#include "lua.h"
#include "lualib.h"
#include "lauxlib.h"
}
#pragma comment(lib,"lua5.1.lib")
lua_State * L;
static int clib(lua_State *L) // lua c static int XXX(lua_State *L)
{
char path[MAX_PATH];
GetCurrentDirectory(MAX_PATH,path);
lua_pushstring(L,path);
return 1; // 1? , ,lua
// 1
}
int main ( int argc, char *argv[] )
{
int sum;
// lua
L = luaL_newstate();
// lua
luaL_openlibs(L);
// C++
lua_register(L,"clib",clib);
//
luaL_dofile(L,"4.lua");
//
lua_getglobal(L,"run");
//
lua_pcall(L,0,0,0);
//
lua_close(L);
return 0;
}
LUAファイル
function run()
print("call running from c")
print(clib())
end