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

怎么在手机上做一个网站自媒体平台注册账号下载

怎么在手机上做一个网站,自媒体平台注册账号下载,头像 wordpress,怎样做市场营销策划第一步搭建lua的环境. win10 lua环境搭建-CSDN博客 我使用的环境是win10vs2015lua54 先来个最简单的lua调用C函数, 无参数无返回值的 第一步:定义C函数. int CTest(lua_State* L) // 返回值是固定的int类型,返回0表示没有返回参数,返回1表示有一个返回参数 {std::cout vs2015lua54 先来个最简单的lua调用C函数, 无参数无返回值的 第一步:定义C函数. int CTest(lua_State* L) // 返回值是固定的int类型,返回0表示没有返回参数,返回1表示有一个返回参数 {std::cout int CTest std::endl;return 0; } 这个函数,除了函数名可以自己定义其他的都要按这个来定义. 返回值是固定的int类型,返回0表示没有返回参数,返回1表示有一个返回参数. 第二步:注册函数. lua_register(lua,CTest,CTest);  第一个参数是lua的lua_State的指针,第二个是lua的注册函数名字,这个名字是在lua代码里使用的,第三个参数是函数指针就是刚才定义的C函数. #include iostream extern C { #include lua.h #include lualib.h #include lauxlib.h }int CTest(lua_State* L) // 返回值是固定的int类型,返回0表示没有返回参数,返回1表示有一个返回参数 {std::cout int CTest std::endl;return 0; }int main() {lua_State *lua luaL_newstate();luaopen_base(lua);luaopen_string(lua);lua_register(lua,CTest,CTest); //第一个参数是lua状态指针,第二个参数是函数名称,第三个参数是lua函数指针,第二个参数和第三个参数可以用不同的名字,但第三个必须使用正确的函数指针luaL_loadfile(lua, D:\\code\\MyCode\\C\\Lua\\CPPAddLua\\testLua\\x64\\Debug\\main.lua);lua_pcall(lua, 0,0,0);getchar();return 0; } 直接运行 这样就是lua调用到了C函数.当然这里lua调用C 函数是指在C代码中的调用. lua传递参数,没有返回值 只需要从lua的堆栈拿出一个参数即可.在此之前还需要再注册一下. lua_register(lua, CTestToString, CTestToString); const char* luaStr lua_tostring(L,1); 这样得到的就是lua传递的参数. int CTestToString(lua_State* L) {const char* luaStr lua_tostring(L,1);std::cout luaStr std::endl;return 0; } 传第二个参数就再获取一下第二个参数. int num lua_tointeger(L,2); int CTestToString(lua_State* L) {const char* luaStr lua_tostring(L,1);std::cout luaStr std::endl;int num lua_tointeger(L,2);std::cout num std::endl;return 0; } 传递普通参数就这样传递. lua传递数组给C函数 第一步注册函数: lua_register(lua, CTestArr, CTestArr); 第二步:编写接收函数 int CTestArr(lua_State* L) {std::vectorstd::string vStr;std::cout int CTestArr std::endl;int arraySize luaL_len(L, 1); //获取表的大小for (int i 1; i arraySize; i){lua_pushnumber(L,i); //往栈中压入一个数字,表示从数组中取那个下标的值,lua都是从1开始的所以i从1开始lua_gettable(L, 1); //把上一行索引的位置出栈,再把i压入 栈vStr.push_back(lua_tostring(L,-1));lua_pop(L,1);}for (auto value : vStr){std::cout value std::endl;}return 0; }第三步:lua调用 . lua传递表给C函数 lua_next3(L,3) 先从栈顶弹出一个key从栈指定位置的table里取下一对key-value,先将key入栈再将value入栈如果第2步成功则返回非0值,否则返回0,并且不向栈中压入任何值. 第一步注册函数: lua_register(lua, CTestTable, CTestTable); 第二步: int CTestTable(lua_State* L) {std::cout int CTestTable std::endl;std::mapstd::string, std::string mStr;lua_pushnil(L);while (lua_next(L, 1) ! 0){mStr[lua_tostring(L, -2)] lua_tostring(L,-1);lua_pop(L,1);}for (auto value : mStr){std::cout value.first value.second std::endl;}return 0; } 第三步lua调用: 结果: lua调用C 获取表中的内容 lua_getfield(L,1,name);std::cout lua_tostring(L,-1) std::endl; Lua调用C参数类型检查 luaL_checktype(L,1,LUA_TBOOLEAN);if (lua_type(L, 1) ! LUA_TBOOLEAN){luaL_argerror(L,1,bad argument);} 第一行,一旦不匹配代码就不会往下执行, 第二行的不匹配还会往下执行. Lua调用C 返回值普通类型 第一步:注册函数: lua_register(lua, TestRe, TestRe); 第二步写函数: int TestRe(lua_State* L) {lua_pushstring(L,return value);return 1; }一个返回参数就返回1,两个就返回2 第三步lua代码 结果: lua返回表 第一步注册函数: lua_register(lua, TestReTable, TestReTable); 第二步写注册函数 int TestReTable(lua_State* L) {lua_newtable(L); // 创建一个表格,放在栈顶lua_pushstring(L,name); // 压入keylua_pushstring(L,ccname);//压入valuelua_settable(L,-3); //弹出key value,并设置到表,表在栈顶了作为返回值lua_pushstring(L, age); // 压入keylua_pushinteger(L, 21);//压入valuelua_settable(L, -3); //弹出key value,并设置到表,表在栈顶了作为返回值return 1; } 第三步:lua 结果: C全部代码: #include iostream extern C { #include lua.h #include lualib.h #include lauxlib.h } #include vector #include string #include mapint CTest(lua_State* L) // 返回值是固定的int类型,返回0表示没有返回参数,返回1表示有一个返回参数 {std::cout int CTest std::endl;return 0; }int CTestToString(lua_State* L) {const char* luaStr lua_tostring(L,1);std::cout luaStr std::endl;int num lua_tointeger(L,2);std::cout num std::endl;bool is lua_toboolean(L, 3);std::cout is std::endl;return 0; }int CTestArr(lua_State* L) {std::vectorstd::string vStr;std::cout int CTestArr std::endl;int arraySize luaL_len(L, 1); //获取表的大小for (int i 1; i arraySize; i){lua_pushnumber(L,i); //往栈中压入一个数字,表示从数组中取那个下标的值,lua都是从1开始的所以i从1开始lua_gettable(L, 1); //把上一行索引的位置出栈,再把i压入 栈vStr.push_back(lua_tostring(L,-1));lua_pop(L,1);}for (auto value : vStr){std::cout value std::endl;}return 0; }int CTestTable(lua_State* L) {std::cout int CTestTable std::endl;/* 读取全部的表的内容 */std::mapstd::string, std::string mStr;lua_pushnil(L);while (lua_next(L, 1) ! 0){mStr[lua_tostring(L, -2)] lua_tostring(L,-1);lua_pop(L,1);}for (auto value : mStr){std::cout value.first value.second std::endl;}/* 只取一个lua_getfield(L,1,name);std::cout lua_tostring(L,-1) std::endl;*/return 0; }int TestRe(lua_State* L) {lua_pushstring(L,return value);return 1; }int TestReTable(lua_State* L) {lua_newtable(L); // 创建一个表格,放在栈顶lua_pushstring(L,name); // 压入keylua_pushstring(L,ccname);//压入valuelua_settable(L,-3); //弹出key value,并设置到表,表在栈顶了作为返回值lua_pushstring(L, age); // 压入keylua_pushinteger(L, 21);//压入valuelua_settable(L, -3); //弹出key value,并设置到表,表在栈顶了作为返回值return 1; }int main() {lua_State *lua luaL_newstate();luaopen_base(lua);luaopen_string(lua);lua_register(lua,CTest,CTest); //第一个参数是lua状态指针,第二个参数是函数名称,第三个参数是lua函数指针,第二个参数和第三个参数可以用不同的名字,但第三个必须使用正确的函数指针lua_register(lua, CTestToString, CTestToString);lua_register(lua, CTestArr, CTestArr);lua_register(lua, CTestTable, CTestTable);lua_register(lua, TestRe, TestRe);lua_register(lua, TestReTable, TestReTable);luaL_loadfile(lua, D:\\code\\MyCode\\C\\Lua\\CPPAddLua\\testLua\\x64\\Debug\\main.lua);lua_pcall(lua, 0,0,0);getchar();return 0; } lua全部代码: CTest()CTestToString(lua string,123456,true) local arr {A001,A002,A003}; CTestArr(arr) local tab {namexiaoming,age22,id007}; CTestTable(tab)local re TestRe() print(re .. re)local retab TestReTable() print(name .. retab[name]) print(name .. retab[age])
http://www.pierceye.com/news/934972/

相关文章:

  • 电子商务网站开发案例dw怎么制作好看的个人网页
  • 爱站网 关键词挖掘工具站长工具wordpress登陆框
  • dede手机网站更新实时新闻
  • 信息化建设 网站作用专业设计网站公司
  • 秦皇岛金洋建设集团网站找人做小程序要多少钱
  • 郑州专业做网站企业wordpress 添加文件权限
  • 企业网站托管套餐南通企业建站系统模板
  • 汉中网站建设服务网站宣传推广平台
  • 关于科技园区建设文章的网站软文兼职10元一篇
  • 免费隐私网站推广海宁自适应网站建设
  • ipad网站制作网络平台怎么建立网站吗
  • 午夜资源站诸暨北京有哪些网站制作公司
  • 无忧自助建站安卓手机建站
  • 网站建设怎设计榆林市城乡建设规划局网站
  • 网站建设相关资讯做网站 思源字体
  • 辽宁网站设计国家开发大学网站作业怎么做
  • 仿西部数码网站注册建筑设计师
  • 南昌企业网站设计建设制作怎么删除ghost wordpress
  • 如何建个人免费网站手机怎么做网站免费的
  • 目前做那个网站能致富怎么增加网站的权重
  • 无锡网站建设818gx中国机械加工网卸粮四通
  • 淘宝网网站建设出入南京最新通知今天
  • 做企业网站项目的心得做网站一定要后台嘛
  • 青峰集团响应式网站论坛网站怎么做跳转
  • 代网站建设制作微信公众号网站开发
  • 潍坊网站的公司电话网站关键字多少个
  • 网站开发确认书青岛做网站的公司哪个好
  • 权威的企业网站建设网站开发费用算无形资产吗
  • 网站安全在线检测网络制作软件
  • 潍坊网站设计制作威宁住房和城乡建设局网站