主頁 > 知識庫 > C語言中通過LUA API訪問LUA腳本變量的簡單例子

C語言中通過LUA API訪問LUA腳本變量的簡單例子

熱門標簽:清朝地圖標注哈爾濱 地圖標注大廈 武漢外呼防封系統(tǒng)多少錢 百度地圖標注早餐區(qū)域 冀州市地圖標注 怎么去除地圖標注 新岸線智能電銷機器人 個人怎么在地圖標注需要的店鋪 漳州智云呼電話機器人

1.簡介

這一節(jié)介紹一些關于棧操作、數(shù)據(jù)類型判斷的LUA API,可以使用這些函數(shù)獲得腳本中的變量值。

2.步驟

編寫 test01.lua 腳本,在VS2003中創(chuàng)建控制臺C++程序并正確配置,執(zhí)行查看結果,修改test02.lua腳本后查看執(zhí)行結果

3.測試腳本

以下是用來測試的lua腳本

復制代碼 代碼如下:

function plustwo(x)   
      local a = 2;   
      return x+a;
end;
rows = 6;
cols = plustwo(rows);

上面的腳本定義了一個函數(shù)、兩個全局變量(LUA腳本變量默認是全局的)。之后的C++程序中,我們將通過棧操作獲得這兩個變量 rows, cols。

4.控制臺程序

復制代碼 代碼如下:

#include iostream>

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

using namespace std;

int main(int argc, char* argv[])
{
    cout "01_Read_Stack" endl;

    /**//* Create a LUA VMachine */
    lua_State *L = lua_open();
    luaopen_base(L);
    luaopen_table(L);
    luaL_openlibs(L);
    luaopen_string(L);
    luaopen_math(L);

    int iError;
    iError = luaL_loadfile(L, "../test01.lua");
    if (iError)
    {
        cout "Load script FAILED!" lua_tostring(L, -1) endl;
        lua_close(L);
        return 1;
    }
    iError = lua_pcall(L, 0, 0, 0);
    if (iError)
    {
        cout "pcall FAILED" lua_tostring(L, -1) iError endl;
        lua_close(L);
        return 1;
    }
   
    lua_getglobal(L, "rows");
    lua_getglobal(L, "cols");

    if (!lua_isnumber(L, -2))
   {
        cout "[rows] is not a number" endl;
        lua_close(L);
        return 1;
    }
    if (!lua_isnumber(L, -1))
    {
        cout "[cols] is not a number" endl;
        lua_close(L);
        return 1;
    }
    cout "[rows]"
         static_castint> (lua_tonumber(L, -2))
         "[cols]"
         static_castint> (lua_tonumber(L, -1))
         endl;

    lua_pop(L,2);
    lua_close(L);
    return 0;
}

您可能感興趣的文章:
  • Lua中的變量類型與語句學習總結
  • Lua中的變量和流控制入門學習
  • 詳解Lua中的變量相關知識點
  • Lua教程(十): 全局變量和非全局的環(huán)境
  • Lua判斷變量是否為數(shù)字、字符串是否可以轉換為數(shù)字等
  • Lua中創(chuàng)建全局變量的小技巧(禁止未預期的全局變量)
  • Lua變量類型簡明總結
  • Lua中的全局變量、非全局變量總結
  • Lua中全局變量與非全局環(huán)境介紹
  • Lua中的變量與賦值方法

標簽:臺灣 天門 天門 金昌 濰坊 德宏 宣城 儋州

巨人網(wǎng)絡通訊聲明:本文標題《C語言中通過LUA API訪問LUA腳本變量的簡單例子》,本文關鍵詞  語,言中,通過,LUA,API,訪問,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《C語言中通過LUA API訪問LUA腳本變量的簡單例子》相關的同類信息!
  • 本頁收集關于C語言中通過LUA API訪問LUA腳本變量的簡單例子的相關信息資訊供網(wǎng)民參考!
  • 推薦文章