中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

英語(yǔ)培訓(xùn)網(wǎng)站模板亞馬遜seo是什么意思

英語(yǔ)培訓(xùn)網(wǎng)站模板,亞馬遜seo是什么意思,什么網(wǎng)站可以做錦鯉活動(dòng),網(wǎng)店美工的重要性我們今天在windows平臺(tái)編譯lua,生成 lua動(dòng)態(tài)庫(kù),lua.exe,luac.exe 我把這個(gè)目錄上傳到giee,使用下面命令獲取它: git clone gitgitee.com:jameschenbo/lua_c_application.git 目錄結(jié)構(gòu)如下: build.cmd 是編譯腳本,在…

我們今天在windows平臺(tái)編譯lua,生成 lua動(dòng)態(tài)庫(kù),lua.exe,luac.exe

我把這個(gè)目錄上傳到giee,使用下面命令獲取它:

git clone git@gitee.com:jameschenbo/lua_c_application.git

目錄結(jié)構(gòu)如下:

build.cmd 是編譯腳本,在執(zhí)行前我們需要修改里面的gcc路徑

我使用的是本地安裝好的QT5的編譯器

點(diǎn)擊運(yùn)行 build.cmd 等待編譯結(jié)束,生成lua文件夾

lua/bin/lua.exe 解析器

lua/bin/luac.exe 編譯器

lua/bin/lua54.dll 動(dòng)態(tài)庫(kù) lua/doc

lua/include?幫助文檔 在其他平臺(tái)使用編譯器需要包含的頭文件

運(yùn)行示例

進(jìn)入example目錄

運(yùn)行build.cmd? 同樣需要更改里面GCC的路徑

生成main.exe,執(zhí)行如下:

c_call_main.c#include "lua/include/lua.h"
#include "lua/include/lualib.h"
#include "lua/include/lauxlib.h"static int clua_add(lua_State* L, int a, int b)
{int sum = 0;/* 函數(shù)入棧 */lua_getglobal(L, "add");/* 第一個(gè)函數(shù)參數(shù)入棧 */lua_pushnumber(L, a);/* 第二個(gè)函數(shù)參數(shù)入棧 */lua_pushnumber(L, b);/* 執(zhí)行函數(shù)調(diào)用。2表示有兩個(gè)函數(shù)形參,1表示add函數(shù)只有一個(gè)返回值,調(diào)用lua_call函數(shù)后lua自動(dòng)出棧參數(shù)和函數(shù),并將函數(shù)的執(zhí)行結(jié)果入棧 *//** 執(zhí)行函數(shù)調(diào)用* 2表示lua腳本中add函數(shù)需要輸入兩個(gè)函數(shù)參數(shù)* 1表示lua腳本中add函數(shù)有一個(gè)返回值* 執(zhí)行完函數(shù)調(diào)用后,lua自動(dòng)出棧函數(shù)和參數(shù)*/lua_call(L, 2, 1);/** 得到函數(shù)add函數(shù)執(zhí)行結(jié)果* -1表示最后一個(gè)返回值,因?yàn)閘ua的函數(shù)可以返回多個(gè)值的。*/sum = lua_tonumber(L, -1);/* 出棧一個(gè)數(shù)據(jù)。此時(shí)棧中存的是add函數(shù)的執(zhí)行結(jié)果,所以需要出棧 */lua_pop(L, 1);return sum;
}
/*** 調(diào)用lua 函數(shù),傳遞參數(shù)并獲取返回值* lua_script/add.lua*/
void example_add(void)
{int sum = 0;lua_State* L;L = luaL_newstate();  /* 創(chuàng)建一個(gè)句柄 */luaL_openlibs(L);     /* 打開(kāi)lua庫(kù) */#if 1if(luaL_dofile(L, "./lua_script/add.lua"))  /* 從lua腳本文件 中加載lua腳本語(yǔ)句 */{printf(" load lua script file error! \r\n");return;}
#elseif(luaL_dostring(L, (const char *)"function add(a, b) return a + b end"))  /* 從字符串中加載lua腳本語(yǔ)句 */{printf(" LUA語(yǔ)句有誤!\r\n");return -1;}
#endifsum = clua_add(L, 10, 20);printf(" sum = %d \r\n", sum);lua_close(L);  /* 關(guān)閉lua,清理內(nèi)存 */
}void load_config_file(lua_State* L, const char* fname, int *w, int *h)
{if(luaL_loadfile(L, fname) || lua_pcall(L, 0, 0,0)) {printf("load config file error\n");}//1.讀變量配置//入棧操作,和出棧操作要對(duì)應(yīng)lua_getglobal(L, "width");lua_getglobal(L, "height");//出棧操作,先壓棧的,后出棧if(!lua_isnumber(L, -2)) {printf("width should be number!\n");}if(!lua_isnumber(L, -1)) {printf("height should be number!\n");}//轉(zhuǎn)換數(shù)據(jù)類(lèi)型*w = lua_tointeger(L, -2);*h = lua_tointeger(L, -1);//清空棧lua_settop(L, 0);//2.讀 table 配置lua_getglobal(L, "sys_table_cfg");//入棧,指定位置lua_getfield(L, -1, "sex");lua_getfield(L, -2, "age");lua_getfield(L, -3, "port");lua_getfield(L, -4, "baud");lua_getfield(L, -5, "isSave");//出棧,和入棧順序相反printf("sys_table_cfg:\n\n");printf("sex:%s\n",lua_tostring(L, -5));printf("age:%d\n",lua_tointeger(L, -4));printf("port:%s\n",lua_tostring(L, -3));printf("baud:%d\n",lua_tointeger(L, -2));printf("isSave:%d\n",lua_tointeger(L, -1));printf("\n");lua_settop(L, 0);
}
/*** 讀取lua格式的配置文件* lua_script/config.lua* 配置文件有全局變量,有表*/
void example_config_file(void)
{lua_State *L = luaL_newstate();luaL_openlibs(L);int w, h;load_config_file(L, "./lua_script/config.lua", &w, &h);printf("width=%d,height=%d\n", w, h);
}
int main(int argc, char* argv[])
{//下面是兩個(gè)例子選擇一個(gè)編譯執(zhí)行//// example_add();  //調(diào)用lua函數(shù)例子,傳參和接收返回值example_config_file();//讀取lua腳本編寫(xiě)的配置文件例子getchar();return 0;
}		

lua當(dāng)配置文件使用的腳本 config.lua

--define windows size
print "my application config file (*.lua)!"width = 100height = 80sys_table_cfg = {sex = "male",age = 18,port = "COM1",baud = 9600,isSave = 0
}

lua函數(shù)調(diào)用腳本 add.lua

function add(a, b) return a + b + 10
end

http://www.risenshineclean.com/news/2390.html

相關(guān)文章:

  • 原創(chuàng)小說(shuō)網(wǎng)站建設(shè)源碼百度seo公司哪家最好
  • 深圳哪個(gè)做網(wǎng)站好優(yōu)化唐山公司做網(wǎng)站
  • 公司網(wǎng)站域名管理中國(guó)50強(qiáng)企業(yè)管理培訓(xùn)機(jī)構(gòu)
  • 高端做網(wǎng)站廣東vs北京首鋼
  • 免費(fèi)設(shè)計(jì)自己的名字合肥網(wǎng)站推廣優(yōu)化公司
  • vps 部署wordpressseo攻略
  • 建設(shè)網(wǎng)站過(guò)程seo網(wǎng)絡(luò)推廣有哪些
  • 做網(wǎng)站建設(shè)推廣好做嗎營(yíng)銷(xiāo)軟件培訓(xùn)
  • 換模板搭建網(wǎng)站怎么做營(yíng)銷(xiāo)100個(gè)引流方案
  • 佛山網(wǎng)站建設(shè)專(zhuān)家長(zhǎng)沙企業(yè)seo服務(wù)
  • 遼寧省住房和城鄉(xiāng)建設(shè)廳網(wǎng)站進(jìn)不去長(zhǎng)春網(wǎng)站制作公司
  • 做網(wǎng)站模板賺錢(qián)關(guān)鍵詞優(yōu)化計(jì)劃
  • 鋼模板規(guī)格尺寸及厚度百度網(wǎng)站怎么優(yōu)化排名靠前
  • 龍采網(wǎng)站建設(shè)揚(yáng)州整站seo
  • 廣州市品牌網(wǎng)站建設(shè)服務(wù)機(jī)構(gòu)電商網(wǎng)絡(luò)推廣怎么做
  • 河南鄭州網(wǎng)站制作公司百度seo營(yíng)銷(xiāo)
  • 中文網(wǎng)站建設(shè)中模板下載全網(wǎng)熱搜榜第一名
  • 網(wǎng)站案例seo網(wǎng)站優(yōu)化價(jià)格
  • 局域網(wǎng)創(chuàng)建網(wǎng)站路由器優(yōu)化大師
  • 重慶網(wǎng)站推廣外包企業(yè)競(jìng)價(jià)推廣培訓(xùn)課程
  • 網(wǎng)站自己做服務(wù)器劃算嗎龍崗網(wǎng)站建設(shè)
  • 做網(wǎng)站開(kāi)視頻網(wǎng)站關(guān)鍵詞排名優(yōu)化易下拉軟件
  • 遵義疫情最新數(shù)據(jù)消息百度小程序優(yōu)化排名
  • 網(wǎng)站開(kāi)發(fā)和程序開(kāi)發(fā)的卻別網(wǎng)絡(luò)營(yíng)銷(xiāo)推廣8種方法
  • 網(wǎng)站備案主體撤銷(xiāo)2023年6月疫情情況
  • 網(wǎng)站設(shè)計(jì)過(guò)程南寧關(guān)鍵詞排名公司
  • 余姚網(wǎng)站建設(shè)62752762最佳磁力吧ciliba搜索引擎
  • 貴陽(yáng)商城網(wǎng)站建設(shè)搜索引擎的工作原理是什么?
  • 廣州網(wǎng)絡(luò)營(yíng)銷(xiāo)網(wǎng)站建設(shè)揚(yáng)中網(wǎng)站制作
  • 做盜版電影網(wǎng)站犯法嗎十大經(jīng)典事件營(yíng)銷(xiāo)案例