• vs项目中使用c++调用lua


    在前一篇文章中。我们已经讲了怎样编译lua源代码并生成lua.lib(请阅读 使用vs2010编译lua5.1源代码生成lua.lib),在新的项目中,我们继续使用之前的项目来学习怎样使用c++调用lua。

    假设有遇到unprotected error in call to Lua API错误。请參考本文最后的做法。

    一、创建项目

    相同在该解决方式中,右键解决方式->加入项目->命名为testlua,选择win32控制台程序->不须要其它配置,选择完毕。

    二、配置项目

    右键testlua项目->通用属性->框架和引用->加入新引用,指向lua项目。

    右键testlua项目->配置属性->c/c++->常规->附加包括文件夹中。加入lua源代码地址。

    三、代码调用

    #include "stdafx.h"
    extern "C"  
    {  
    #include <lua.h>  
    #include <lualib.h>  
    #include <lauxlib.h>  
    }  
    
    int _tmain(int argc, _TCHAR* argv[])
    {
    	lua_State *L = lua_open();  
        luaL_openlibs(L);  
      
        const char *buf = "print('Hello World')";  
        luaL_dostring(L,buf);  
          
        lua_close(L);  
    	return 0;
    }
    

    五、创建lua文件

    在当前cpp文件所在的文件夹下,创建一个test.lua文件,文件中写加上lua代码,这里我写的是 print("hello world  from lua file")

    四、完毕

    直接执行,能够输出"hello world" 和 hello world  from lua file。

    假设遇到 unprotected error in call to Lua API (unable to get ModuleFileName)错误,请改动两个项目的字符集,项目右键->配置属性->常规->字符集。这里将“使用unicode字符集”改动为"使用多字节字符集"。




  • 相关阅读:
    两个简单的画验证码图形程序
    Cisco路由技术基础知识详解
    网络管理中的常用命令
    网络管理中的常用命令
    基于SNMP的MIB库访问实现
    SNMP编程基础
    SNMP编程基础
    Cisco路由技术基础知识详解
    两个简单的画验证码图形程序
    模版方法
  • 原文地址:https://www.cnblogs.com/wgwyanfs/p/6961605.html
Copyright © 2020-2023  润新知