【IT168 技术文档】基本函数Lua内置的函数,不需要额外装载  1、assert (v [, message])  功能:相当于C的断言,  参数:  v:当表达式v为nil或false将触发错误,  message:发生错误时返回的信息,默认为"assertion failed!"  2、collectgarbage (opt [, arg])  功能:是垃圾收集器的通用接口,用于操作
/我们在用C写程序的时候,很多情况下需要用到List,Map等集合,但是C是不原生支持这些数据结构的。碰到这种情况的话,要么自己实现一套API,要么就用别人写好的现成的类。但是...
转载 2015-05-28 19:02:00
67阅读
2评论
如何使用CAPI存取操作Lua中的值,一组能使CLua交互的函数 Lua_C数据交互使用一个虚拟栈:luaStateLua和C的差异:1、Lua使用垃圾回收,C使用显式的内存释放  2、Lua使用动态类型,C使用静态类型 lua头文件介绍: lua.h定义了lua提供的基础函数,包括创建Lua环境(LuaState),调用Lua函数(lua_pcall)... lauxlib.h定
转载 2024-10-27 09:01:20
24阅读
最近一段时间,一直在写底层驱动代码,印象最深刻的就是回函数,因为你要将驱动封装好,接口预留,以方便给上层开发者调用。那么不再废话,立刻进入主题!1.什么是回函数?百度百科解释:回函数就是一个被作为参数传递的函数。在C语言中,回函数只能使用函数指针实现其中提到了几个点: 1)作为参数传递的函数—本质是一个函数 2)函数指针—只能作为指针被调用总的意思就是将“A函数的地址”作为B函数的参数,
委托回是刚接触c#时最头疼的东西,老看老忘,遂整理一下现在对委托回的理解。如有错误,请指出,感谢。委托C# 中的委托(Delegate)类似于 CC++ 中函数的指针。委托是存有对某个方法的引用的一种引用类型变量。引用可在运行时被改变。 回函数回函数就是允许用户把需要调用的方法的指针作为参数传递给一个函数,以便该函数在处理相似事件的时候可以灵活的使用不同的方法。注意:定义的
第一步是定义函数。所有在Lua中被调用的C/C++函数将使用下面一类指针进行调用: typedef int (*lua_CFunction) (lua_State *L); 换句话说,函数必须要以Lua解释器作为唯一的参数,并且返回一个唯一的整数。由于用一个Lua解释器作为参数,因此函数实际上能够从栈中取得任意数量的参数。在后面我们将看到,返回的整数实际上是被压入栈的值的个数。通过如此容易的封
转载 2024-10-26 09:41:40
92阅读
1.c调用lua的实现原理lua语言是c语言实现的,而且是非常轻量级的,非常适合内存受限的嵌入式产品c调用lua,需要在c程序中模拟出lua解释器环境,所以需要调用lua的函数,即生成c程序必定要链接lualua解释器和C是通过一个虚拟栈来交换数据的栈的大小可以设置,通过查看lua的源码,可以知道这个栈的大小,在luaconf.h的LUAI_MAXSTACK,还可以通过lua_checksta
转载 2024-05-16 11:30:01
219阅读
相关知识提点:很经典的extern C解释编译器:gcc和g++编译器区别       gcc是c语言编译器(也可处理c++);g++是c++编译器       g++对.c和.cpp文件都当c++处理;gcc对.c文件当作c处理,对.cpp当做c++处理       g++编译器在使用时其实调用的是gcc编译器       gcc不能自动链接文件(.so等),一般用g++来自动链接文件,要一
1、标注的尾巴有0咋办呀?举例说明:如果你标注为100MM但实际在图形当中标出的是100.00或100.000等等这样的情况www.askcad.com,w2I'o2k:^那么用下面这个命令:"dimzin"系统变量最好要设定为8,这时尺寸标注中的缺省值不会带几个尾零,我们直接输入此命令进行修改很是方便,不用在标注选项里调了。2、如果想将CAD图插入WORD咋办呀Word文档制作中,往往需要各种插
1、lua作为一个小巧的脚本语言,很适合做二次开发接口。比如我们开发一个业务框架,其他人写lua脚本来实现具体的功能。2、c调用lua脚本  2.1 下载lua源代码  wget http://www.lua.org/ftp/lua-5.3.4.tar.gz  2.2 解压 tar -xzvf lua-5.3.4.tar.gz  2.3  编译&n
转载 2023-11-27 15:53:41
88阅读
**Android 调用 C ** 在 Android 开发中,经常会遇到需要调用 C 的情况。C 通常是以静态链接(.a 文件)或动态链接(.so 文件)的形式存在,可以通过 JNI(Java Native Interface)来实现 Android 与 C 之间的交互。本文将介绍如何在 Android 中调用 C ,并给出示例代码。 ## 1. JNI 概述 JNI 是一种
原创 2024-01-13 07:26:08
158阅读
最近做一个小项目,是用Lua写的,中间用到了很多的回,基本Cocos中的那几种常用回都用到了,本文就针对所用到的回函数做一个总结。 1、菜单按钮的回这二者的回是这么实现的,新建一个菜单或者是按钮,为了点击菜单或者按钮以后实现程序的逻辑,我们需要为菜单和按钮来绑定一个回函数,于是乎,我们有了以下的代码: --定义菜单项的回函数 l
转载 1月前
348阅读
limlog作一篇文章记录实现,驱动优化迭代。 代码仓库用法实现后端实现前端实现日期时间的处理线程id的获取日志行的其他项处理优化整形字符串格式化优化测试benchmark性能分析TODOChange Log参考对日志的 特点期望:正确性,这个是最重要也是最基本的,包括 全部写入.多个线程间的日志不穿插干扰.日志线程不能干扰主程序的运行逻辑.易读性每条日志记录占用一行空间,便于 awk 等工具的
转载 2024-05-19 15:33:40
49阅读
 本来只是单纯想实现异步加载图片的功能,恰恰发现lua竟然没有这个异步机制,于是无奈求助于C++的addImageAsync方法,但是接下来是,加载完了如果告诉lua任务完成呢,果断回啊,但这就牵扯到了C++与lua之间的通信问题了,众所周知,luaC++通信通过栈来处理,其实这块cocos2dx 3.0已经帮我们做好了封装,就在CCLuaEngine里面,不知道路劲?就在frame
日期作者版本说明2020.12.27Mr.ZhengV1.1可控周期性类回函数的实现 目录声明一、可控周期性类回函数名字的由来二、代码串介绍1.lua启动扳机代码2.lua参数交替代码3.miniC回主体代码三、发散思维下的高级用法 声明此次新编写的可控周期性类回函数使用了lua和miniC两种脚本式编程语言,是基于某款TFT屏软件上实现的功能,其他脚本式工控屏编程也可参考学习,希望能够给
转载:Lua是一个嵌入式的语言,它不仅可以是一个独立运行的程序,也可以是一个用来嵌入其它应用的程序C API是一个C代码与Lua进行交互的函数集,它由以下几部分构成:1、  读写Lua全局变量的函数;2、  调用Lua函数的函数;3、  运行Lua代码片段的函数;4、  注册C函数后可以在Lua中被调用的函数; 在CLUA之间交互的关键在于一
转载 10月前
51阅读
[cpp]  view plain copy 1. 2. 如果参数是一个函数指针,调用者可以传递一个函数的地址给实现者,让实现者去调用它,这称为回函数(Callback Function)。例如qsort(3)和bsearch(3)。 3. 表 24.7. 回函数示例:void func(void (*f)(void *), void
内核模块是Linux内核向外部提供的一个插口,其全称为动态可加载内核模块(Loadable Kernel Module,LKM),我们简称为模块。Linux内核之所以提供模块机制,是因为它本身是一个单内核(monolithic kernel)。单内核的最大优点是效率高,因为所有的内容都集成在一起,但其缺点是可扩展性和可维护性相对较差,模块机制就是为了弥补这一缺陷。一、 什么是模块模块是具有独立功能
# 使用 Java 调用 C 动态(.so 文件)指南 在 Java 中调用 C 动态是一个有趣而实用的技能,尤其是在性能要求高或需要调用已有的 C 时。本文将详细介绍如何实现 Java 调用 C 动态(.so 文件)的步骤和代码示例。 ## 流程概述 下面是调用流程的概述,以表格形式展示: | 步骤 | 描述
原创 7月前
65阅读
# 使用 Lua 脚本操作 Redis 的完整指南 在现代应用开发中,Redis 是一种流行的高性能缓存存储,而 Lua 脚本则可以帮助我们在 Redis 中执行更复杂的操作。接下来,我将教你如何使用 Lua 脚本进行 Redis 操作,并通过详细的流程图和代码示例来帮助你更好地理解这一过程。 ## 操作流程 我们将通过以下步骤来实现 Lua 脚本 Redis 的操作: | 步骤 |
原创 2024-09-19 06:31:15
14阅读
  • 1
  • 2
  • 3
  • 4
  • 5