主頁 > 知識(shí)庫 > Lua編程示例(六): C語言調(diào)用Lua函數(shù)

Lua編程示例(六): C語言調(diào)用Lua函數(shù)

熱門標(biāo)簽:免費(fèi)門店地圖標(biāo)注注冊(cè)入駐 電話機(jī)器人每天搜索多少次 衡水外呼線路解決 陜西便宜電銷機(jī)器人軟件 艾比利外呼系統(tǒng) ??谥悄苷Z音電銷機(jī)器人好用嗎 杞縣地圖標(biāo)注app 昆明電話外呼系統(tǒng)好么 外呼系統(tǒng)一天耗費(fèi)多少流量

C++端:

#include "stdafx.h"

lua_State *L;
void load_lua(lua_State **L,char *filename){
 *L=luaL_newstate();
 luaL_openlibs(*L);
 if(luaL_loadfile(*L,filename) || lua_pcall(*L,0,0,0)){
 luaL_error(*L,"load file error! %s",lua_tostring(*L,-1));
 }
}
int _tmain(int argc, _TCHAR* argv[])
{
 load_lua(L,"raw.lua"); //此處若直接傳入L會(huì)出錯(cuò)
 lua_getglobal(L,"gettable");
 if(lua_pcall(L,0,1,0) !=0){
 luaL_error(L,"pcall wrong %s",lua_tostring(L,-1));
 }
 luaL_checktype(L,1,LUA_TTABLE);
 int n=lua_objlen(L,1);
 printf("n = %d\n",n);
 lua_pushstring(L,"ee");
 lua_rawseti(L,1,5); //t[n]=v,n為第三個(gè)參數(shù),v是棧頂元素
 n=lua_objlen(L,1);
 printf("n = %d\n",n);
 int i;
 for(i=1;i=n;i++){
 lua_rawgeti(L,1,i);
 printf("%s\n",lua_tostring(L,-1));
 }
 return 0;
}

lua腳本:

 

function gettable() 
  tb={ "aa","bb","cc","dd"} 
  return tb 
end 

運(yùn)行輸出的結(jié)果為:

n = 4 
n = 5 
aa 
bb 
cc 
dd 
ee

您可能感興趣的文章:
  • C語言與Lua之間的相互調(diào)用詳解
  • C++利用LuaIntf調(diào)用Lua的方法示例
  • 簡(jiǎn)單談?wù)刲ua和c的交互
  • Lua調(diào)用自定義C模塊
  • Lua編程示例(五): C語言對(duì)Lua表的讀取和添加
  • Lua編程示例(一):select、debug、可變參數(shù)、table操作、error
  • Lua中調(diào)用C++函數(shù)示例
  • C++中調(diào)用Lua配置文件和響應(yīng)函數(shù)示例
  • 使用Lua來擴(kuò)展C++程序的方法
  • Lua和C/C++互相調(diào)用實(shí)例分析

標(biāo)簽:西寧 臨滄 泰安 南京 宿遷 昌都 營口

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Lua編程示例(六): C語言調(diào)用Lua函數(shù)》,本文關(guān)鍵詞  Lua,編程,示例,六,語言,調(diào)用,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Lua編程示例(六): C語言調(diào)用Lua函數(shù)》相關(guān)的同類信息!
  • 本頁收集關(guān)于Lua編程示例(六): C語言調(diào)用Lua函數(shù)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章