37,721
社区成员
发帖
与我相关
我的任务
分享
int main(int argc, char **argv)
{
}
#include "all.h"
extern "C"{
#include "../src/lua.h"
#include "../src/lauxlib.h"
#include "../src/lualib.h"
}
static int stackDump (lua_State* L)
{
int i;
int top = lua_gettop(L);printf("length is %d\n", top);
for (i=1; i<=top; i++){
int t = lua_type(L,i);
switch (t){
case LUA_TSTRING:
printf("'%s'", lua_tostring(L,i));
break;
case LUA_TBOOLEAN:
printf(lua_toboolean(L,i) ? "true":"false");
break;
case LUA_TNUMBER:
printf("%g", lua_tonumber(L,i));
break;
default:
printf("$s", lua_type(L,t));
break;
}
printf(" ");
}
printf("\n");
return 0;
}
static const struct luaL_Reg mylib[] = {
{"stackDump", stackDump},
{NULL, NULL}
};
int luaopen_mylib(lua_State* L)
{
luaL_register(L, "mylib", mylib);
return 1;
}
gcc mylib.c -fPIC -shared -o libmylib.so