当前位置: 首页 > news >正文

新竹县网站建设_网站建设公司_响应式网站_seo优化

仙游h5做网站,网站开发的未来发展,wordpress的网站无法发布文章,仿克米设计网站我们今天在windows平台编译lua#xff0c;生成 lua动态库,lua.exe#xff0c;luac.exe 我把这个目录上传到giee#xff0c;使用下面命令获取它: git clone gitgitee.com:jameschenbo/lua_c_application.git 或者直接访问:访问网页 目录结构如下#xff1a; build.cmd 是…我们今天在windows平台编译lua生成 lua动态库,lua.exeluac.exe 我把这个目录上传到giee使用下面命令获取它: git clone gitgitee.com:jameschenbo/lua_c_application.git 或者直接访问:访问网页 目录结构如下 build.cmd 是编译脚本在执行前我们需要修改里面的gcc路径 我使用的是本地安装好的QT5的编译器 点击运行 build.cmd 等待编译结束,生成lua文件夹 lua/bin/lua.exe 解析器 lua/bin/luac.exe 编译器 lua/bin/lua54.dll 动态库 lua/doc 帮助文档 lua/include 在其他平台使用lua需要包含的头文件 运行示例 进入example目录 运行build.cmd  同样需要更改里面GCC的路径 生成main.exe,执行如下: c_call_main.c#include lua/include/lua.h #include lua/include/lualib.h #include lua/include/lauxlib.hstatic int clua_add(lua_State* L, int a, int b) {int sum 0;/* 函数入栈 */lua_getglobal(L, add);/* 第一个函数参数入栈 */lua_pushnumber(L, a);/* 第二个函数参数入栈 */lua_pushnumber(L, b);/* 执行函数调用。2表示有两个函数形参1表示add函数只有一个返回值调用lua_call函数后lua自动出栈参数和函数并将函数的执行结果入栈 *//** 执行函数调用* 2表示lua脚本中add函数需要输入两个函数参数* 1表示lua脚本中add函数有一个返回值* 执行完函数调用后lua自动出栈函数和参数*/lua_call(L, 2, 1);/** 得到函数add函数执行结果* -1表示最后一个返回值因为lua的函数可以返回多个值的。*/sum lua_tonumber(L, -1);/* 出栈一个数据。此时栈中存的是add函数的执行结果所以需要出栈 */lua_pop(L, 1);return sum; } /*** 调用lua 函数,传递参数并获取返回值* lua_script/add.lua*/ void example_add(void) {int sum 0;lua_State* L;L luaL_newstate(); /* 创建一个句柄 */luaL_openlibs(L); /* 打开lua库 */#if 1if(luaL_dofile(L, ./lua_script/add.lua)) /* 从lua脚本文件 中加载lua脚本语句 */{printf( load lua script file error! \r\n);return;} #elseif(luaL_dostring(L, (const char *)function add(a, b) return a b end)) /* 从字符串中加载lua脚本语句 */{printf( LUA语句有误\r\n);return -1;} #endifsum clua_add(L, 10, 20);printf( sum %d \r\n, sum);lua_close(L); /* 关闭lua清理内存 */ }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.读变量配置//入栈操作,和出栈操作要对应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);}//转换数据类型*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[]) {//下面是两个例子选择一个编译执行//// example_add(); //调用lua函数例子,传参和接收返回值example_config_file();//读取lua脚本编写的配置文件例子getchar();return 0; } lua当配置文件使用的脚本 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函数调用脚本 add.lua function add(a, b) return a b 10 end
http://www.ihoyoo.com/news/130272.html

相关文章:

  • 做视频网站视频青岛 php 网站建设
  • 网站建设编辑器广西新农村建设工作专题网站
  • 要找企业做网站应该注意什么南京网站建设公司哪家好
  • 自己造网站坪地网站建设价格
  • 杭州棋牌软件开发公司简述优化搜索引擎的方法
  • php小网站wordpress 改字体
  • 安徽建设银行 招聘网站wordpress关于
  • 琪觅公司网站开发初中生编程入门先学什么
  • 建旅游网站的意义杭州模板建站定制网站
  • 舆情网站入口网址大全名字开网店需要多少钱?
  • 免费的网站怎么建成都网站建设天府科蓝
  • 企业网站怎么做推广比较好平面设计月薪大概多少
  • 公司做的网站过期了设计工作室名字创意好听
  • 贸易做网站dw做一个小网站教程
  • 网站建设经验会议讲话稿网站备案 公章
  • 学校网站的建设需求公司名称注册规则
  • 珠海哪个建设网站建设好前端开发是青春饭吗
  • 网站如何被谷歌收录门户网站系统有哪些平台
  • 网站建设云南才力wordpress博客主题推荐
  • 青海餐饮网站建设宁波网站推广方案
  • 网站优化报告查看网站是否收录
  • 门户营销型网站做网站代码第一不
  • 旅游网站系统的设计与实现可商用的免费素材网站
  • wordpress新手建站天津模板网页制作如何做
  • 公司怎么制作网站如何写软文推广产品
  • 开发一个网站的费用网站模板安全管理系统
  • 北京网站建设公司华网东莞证券官方网站
  • 怎么制作学校网站域名多少钱一年
  • 电子商务网站建设的主要内容网站信息管理平台
  • 上海网站建设自学网站营销中常见问题