亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

怎么將C中數據傳入lua中

怎么將C中數據傳入lua中

C
狐的傳說 2019-04-11 09:06:46
#include <stdio.h>#include <Windows.h>#include <string>using namespace std;extern "C"{#include "lua.h"#include "lualib.h"#include "lauxlib.h"};lua_State * L;//解釋器static int average(lua_State *L){return 1;}int main(){L=lua_open();luaL_openlibs(L);luaL_dofile(L,"c:\\test112.lua");//netstatutemodel1int a=12;lua_pushnumber(L,a);lua_getglobal(L,"a");a=(int)lua_tointeger(L,-1);lua_pop(L,1);lua_close(L);system("pause");return 0;}、、、、、、、、、lua 中 print(a) 只要傳個int a 過來就可以了,
查看完整描述

2 回答

?
呼喚遠方

TA貢獻1856條經驗 獲得超11個贊

int a=12;
lua_pushnumber(L,a);//你將a壓入棧之后,并沒有將a的值賦予給lua中的變量a,所以lua中a的值沒變.所以接下來你獲取a的值不會是12
lua_getglobal(L,"a");
a=(int)lua_tointeger(L,-1);

不知道你是否想的是這樣:
int a=12;
lua_pushnumber(L,a);
//設置lua的全局變量值:
lua_pushnumber(L,a);
lua_setglpbal(L, "a");
//取全局變量的值:
lua_getglobal(L,"a");
a=(int)lua_tointeger(L,-1);



查看完整回答
反對 回復 2019-04-12
  • 2 回答
  • 0 關注
  • 522 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號