首页
社区
课程
招聘
[求助]关于LUA调用C函数的问题
发表于: 2008-4-29 12:56 4961

[求助]关于LUA调用C函数的问题

2008-4-29 12:56
4961
#include "stdafx.h"
#include "windows.h"

extern "C"
{
        #include "lua.h"
        #include "lualib.h"
        #include "lauxlib.h"
}

#pragma   comment(lib,"core.lib")   
#pragma   comment(lib,"standard.lib")

lua_State *L;

static int average(lua_State *L)
{
         /* 得到参数个数 */
        int n = lua_gettop(L);
        double sum = 0;
        int i;

        /* 循环求参数之和 */
        for (i = 1; i <= n; i++)
        {
                /* 求和 */
                sum += lua_tonumber(L, i);
        }

        /* 压入平均值 */
        lua_pushnumber(L, sum / n);

        /* 压入和 */
        lua_pushnumber(L, sum);

         /* 返回返回值的个数 */
        return 2;
}

int main(int argc, char* argv[])
{
        /* 初始化LUA */
        L=lua_open();
       
        /* 打开LUA库文件 */
        luaL_openlibs(L);
       
        /* 注册LUA函数 */
        lua_register(L,"average",average);       

        /* 执行LUA文件 */
        luaL_dofile(L,"test.lua");       

        /* 关闭LUA */
        lua_close(L);

        printf( "Press enter to exit!" );
        getchar();

        return 0;
}

test.lua内容为:

avg, sum = average(10, 20, 30, 40, 50)

print("The average is ", avg)
print("The sum is ", sum)

这是我在网上抄下来的,不过它没有包含我自己编译的两个LIB,是因为我两个LIB的问题吗
运行之后没反应,直接就是Press enter to exit!希望会LUA的朋友指点一下,谢谢!

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费
支持
分享
最新回复 (1)
雪    币: 108
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
结贴,搞错路径了,不好意思
2008-4-29 13:14
0
游客
登录 | 注册 方可回帖
返回

账号登录
验证码登录

忘记密码?
没有账号?立即免费注册