多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內(nèi)最全IT社區(qū)平臺 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當前位置:首頁 > php開源 > php教程 > [置頂] lua進階8-- C++讀取lua文件里的三維表

[置頂] lua進階8-- C++讀取lua文件里的三維表

來源:程序員人生   發(fā)布時間:2015-03-28 08:11:57 閱讀次數(shù):2769次

前面lua進階里面講到用C++讀取2維表,但是最近又有了新的需求,lua文件里面出現(xiàn)了3維表,自己摸索了1下,終究找到了解決的方式,在這里面與大家分享1下</span>

我的lua文件里面的3維表結(jié)構(gòu)以下

stage = { {m_nId = 105,m_nBoss = 0,m_nScoreList = {300,450,600},m_nRewardList = {230401201,13020801,13010411},m_nDropItemList = {0,0,0}}, {m_nId = 106,m_nBoss = 0,m_nScoreList = {630,840,1050},m_nRewardList = {241801101,14000201,18000201},m_nDropItemList = {14000101,241700301,230501301}}, {m_nId = 107,m_nBoss = 0,m_nScoreList = {735,980,1225},m_nRewardList = {230400201,230400411,230500101},m_nDropItemList = {12020101,13010301,230401401}}, {m_nId = 108,m_nBoss = 0,m_nScoreList = {840,1120,1400},m_nRewardList = {19000101,241500901,18040201},m_nDropItemList = {14000401,230401201,14000101}}, {m_nId = 109,m_nBoss = 0,m_nScoreList = {1080,1440,1800},m_nRewardList = {12020301,230600101,241800501},m_nDropItemList = {16000401,230901101,230700301}}, {m_nId = 110,m_nBoss = 1,m_nScoreList = {1200,1600,2000},m_nRewardList = {0,0,220200901},m_nDropItemList = {230902101,231101101,231000401}}
};


讀取代碼以下


#include <stdio.h> extern "C"{ #include "lua.h" #include "lualib.h" #include "lauxlib.h" } #include <iostream> #include <vector> #include "string.h" using namespace std; int main ( int argc, char *argv[] ) { lua_State* L; L=lua_open(); luaopen_base(L); luaopen_table(L); luaopen_string(L); luaopen_math(L); if (luaL_dofile(L, "stage.lua")) { printf("run script failed "); } else { int it_idx; int t_idx; lua_getglobal(L,"stage"); t_idx=lua_gettop(L); cout << t_idx << endl; lua_pushnil(L); while(lua_next(L,t_idx)) { it_idx=lua_gettop(L); lua_pushnil(L); //cout << "it_idx = " << it_idx << endl; int m_id = 0; while(lua_next(L,it_idx)) { const char* strkey = lua_tostring(L,⑵); if (strcmp(strkey, "m_nId") == 0) { m_id = (int)lua_tonumber(L, ⑴); cout << "m_id = " <<m_id << " "; } if (strcmp(strkey, "m_nBoss") == 0) { m_id = (int)lua_tonumber(L, ⑴); cout << "m_nBoss = " << m_id << " "; } if (strcmp(strkey, "m_nScoreList") == 0) { if (lua_istable(L, ⑴)) { cout << "m_nScoreList = " ; int ll_idx = lua_gettop(L); //cout << "ll_idx = " << ll_idx << endl; lua_pushnil(L); while (lua_next(L, ll_idx)) { cout << (int)lua_tonumber(L, ⑴) << " "; lua_pop(L, 1); } } } if (strcmp(strkey, "m_nRewardList") == 0) { if (lua_istable(L, ⑴)) { cout << " m_nRewardList = " ; int ll_idx = lua_gettop(L); // cout << "ll_idx = " << ll_idx << endl; lua_pushnil(L); while (lua_next(L, ll_idx)) { cout << (int)lua_tonumber(L, ⑴) <<" "; lua_pop(L, 1); } } } if (strcmp(strkey, "m_nDropItemList") == 0) { if (lua_istable(L, ⑴)) { cout << " m_nDropItemList = "; int ll_idx = lua_gettop(L); // cout << "ll_idx = " << ll_idx << endl; lua_pushnil(L); while (lua_next(L, ll_idx)) { cout << (int)lua_tonumber(L, ⑴) << " "; lua_pop(L, 1); } } } lua_pop(L,1); } cout << endl; lua_pop(L,1); //break; } } lua_close(L); return 0; }




生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 成人看片又黄又爽 | 久久天天躁狠狠躁夜夜不卡 | 久久精品国产免费中文 | 亚洲图片在线欧美专区图片 | 免费在线一级毛片 | 亚洲综合一二三区 | 久久久久久久国产a∨ | 免费国产成人α片 | 久久精品免费全国观看国产 | 性欧美videos高清精品 | 亚洲最新色图 | 一级一级女人真片 | tube日本xxxx69| 欧美一区二区三区成人看不卡 | 日韩一级欧美一级毛片在线 | 亚洲综合日韩欧美一区二区三 | 亚洲欧美自拍偷拍 | 午夜免费网站 | 五月婷婷伊人网 | 高清一区二区三区免费 | 欧美成人精品福利网站 | 中国性xxxxxbbbbb | 精品一区二区三 | 国产jizz美国jizz免费看 | 久久91在线 | 亚洲欧洲日本精品 | 久久精品一品道久久精品9 久久精品一区二区 | 国产亚洲精品久久久久久牛牛 | 午夜视频免费在线 | 亚洲成a人片在线观看尤物 亚洲成a人片在线观看中文!!! | 性欧美精品 | 最近中文字幕免费国语 | 成人精品在线视频 | 欧美日韩第一区 | 欧美妇乱| 黄色毛片免费网站 | 一区二区在线精品免费视频 | 欧美艾v福利视频在线观看 欧美爱爱爽爽视频在线观看 | 欧美在线视频二区 | 欧美韩国日本在线 | 久久综合九色综合欧洲色 |