C调用LUA

通过一个简单的例子,看C是如何调用LUA的,这样将原有C处理数据的逻辑用LUA来做,省去了编译C的过程。

代码,如下:

#include <stdio.h>
#include <string.h>
#include <lua.h>
#include <lauxlib.h>
#include <lualib.h>
lua_State* L = NULL;


int main()
{
    L = lua_open();
    luaL_openlibs(L);
    if (luaL_loadfile(L, "test.lua") || lua_pcall(L, 0,0,0))
        error(L, "cannot run configuration file:%s", lua_tostring(L, -1));


     double x = 1.0;
     double y = 5.0;

     double z;

    

     lua_getglobal(L, "f");
     lua_pushnumber(L, x); 
     lua_pushnumber(L, y); 
    
     lua_pcall(L, 2,1,0);


//    printf("%f\n", f(1.0, 2.0));
    
    return 0;
}

编译参数:

gcc   a6.c -I/usr/include/lua5.1 -ldl -lm -llua5.1

糖果

糖果
LUA从入门到放弃

Tweyseo Walkonluajit 1

# **0. 背景**## **a. 目的**这里主要研究LuaJIT的Trace的相关原理,并且展示如何使用LuaJIT提供的[v.lua](https://github.com/LuaJIT/LuaJIT/blob/master/src/jit/v.lua)和[dump...… Continue reading

Nginx+Lua中文WIKI

Published on March 14, 2019