Lua与C/C++交互——Lua调用C/C++

                                                                        Lua与C/C++交互——Lua调用C/C++

0.简介
         Lua(念“鲁啊”)作为一门发展成熟的脚本语言,正在变得越来越流行。它也可以作为和C/C++执行脚本交互的语言。并且Lua的整个库很小,我安装了最新的正式版Lua 5.1版本,而整个静态链接的lua.dll才164KB,所以Lua很轻量,特别适合轻量级脚本嵌入。

        看文章名就知道,我们要讲Lua和C/C++的交互,这期讲Lua如何使用C/C++的东西——Lua通过C/C++导出的dll来调用。OK,Let’s Go!首先,你得去Lua官网 http://www.lua.org 获取最新版本的Lua。

1.准备工作
       安装完Lua,需要在Visual Studio中配置Lua路径,使得你的编译器能搜寻到。关于VS2010的配置,见我的博文《VS2010 C++目录配置》一文。完成后新建一个Dll工程便可以了。

       我们用一个在Lua中显示Windows对话框的程序来简要介绍一下,程序虽小,但五脏俱全。程序如下:

//
// 将一些有用的Win32特性导出.
// 以便在Lua中使用.
//


extern "C"
{
#include 
#include 
#include 
#pragma comment(lib, "lua.lib")
};


#include 
#include 
using namespace std;


static const char* const ERROR_ARGUMENT_COUNT = "参数数目错误!";
static const char* const ERROR_ARGUMENT_TYPE  = "参数类型错误!";


//
// 发生错误,报告错误.
//
void ErrorMsg(lua_State* luaEnv, const c

你可能感兴趣的:(C/C++,Lua,软件开发,lua,dll,library,string,脚本,integer)