程序开发中逻辑结构需要用到的函数有哪些?
发布网友
发布时间:2022-04-26 01:21
我来回答
共2个回答
热心网友
时间:2022-04-26 02:50
比如字符串截取函数,字符串匹配函数等。
以栈顶的值作为错误对象,抛出一个 L
ua 错误。 这个函数将做一次长跳转,所以一定不会返回 (r)。
lu a_gc
[-0, +0, e]
int lu a_gc (lua_State *L, int what, int data);
控制垃圾收集器。
这个函数根据其参数 what 发起几种不同的任务:
LUA_GCSTOP: 停止垃圾收集器。
LUA_GCRESTART: 重启垃圾收集器。
LUA_GCCOLLECT: 发起一次完整的垃圾收集循环。
LUA_GCCOUNT: 返回 Lua 使用的内存总量(以 K 字节为单位)。
LUA_GCCOUNTB: 返回当前内存使用量除以 1024 的余数。
LUA_GCSTEP: 发起一步增量垃圾收集。
LUA_GCSETPAUSE: 把 data 设为 垃圾收集器间歇率 (5),并返回之前设置的值。
LUA_GCSETSTEPMUL: 把 data 设为 垃圾收集器步进倍率 (§2.5),并返回之前设置的值。
LUA_GCISRUNNING: 返回收集器是否在运行(即没有停止)。
关于这些选项的细节, collectgarbage 。
lua_getallocf
[-0, +0, –]
lua_Alloc lua_getallocf (lua_State *L, void **ud);
返回给定状态机的内存分配器函数。 如果 ud 不是 NULL , Lua 把设置内存分配函数时设置的那个指针置入 *ud 。
lua_getfield
[-0, +1, e]
int lua_getfield (lua_State *L, int index, const char *k);
把 t[k] 的值压栈, 这里的 t 是索引指向的值。 在 Lua 中,这个函数可能触发对应 "index" 事件对应的元方法 ( )。
函数将返回压入值的类型。
lua_getextraspace
[-0, +0, –]
void *lua_getextraspace (lua_State *L);
返回一个 Lua 状态机中关联的内存块指针。 程序可以把这块内存用于任何用途;而 Lua 不会使用它。
每一个新线程都会携带一块内存, 初始化为主线程的这块内存的副本。
默认配置下,这块内存的大小为空指针的大小。 不过你可以重新编译 Lua 设定这块内存不同的大小。 (参见 luaconf.h 中的 LUA_EXTRASPACE。)
lua_getglobal
[-0, +1, e]
int lua_getglobal (lua_State *L, const char *name);
把全局变量 name 里的值压栈,返回该值的类型。
lua_geti
[-0, +1, e]
int lua_geti (lua_State *L, int index, lua_Integer i);
把 t[i] 的值压栈, 这里的 t 指给定的索引指代的值。 和在 Lua 里一样,这个函数可能会触发 "index" 事件的元方法 ()。
返回压入值的类型。
lua_getmetatable
[-0, +(0|1), –]
int lua_getmetatable (lua_State *L, int index);
如果该索引处的值有元表,则将其元表压栈,返回 1 。 否则不会将任何东西入栈,返回 0 。
lua_gettable
[-1, +1, e]
int lua_gettable (lua_State *L, int index);
把 t[k] 的值压栈, 这里的 t 是指索引指向的值, 而 k 则是栈顶放的值。
这个函数会弹出堆栈上的键,把结果放在栈上相同位置。 和在 Lua 中一样, 这个函数可能触发对应 "index" 事件的元方法 (4 )。
返回压入值的类型。
热心网友
时间:2022-04-26 04:08
(1)一个源程序文件是由一个或多个C函数组成的,一个源程序文件是一个编译单位。
(2)一个C程序由一个或多个源程序文件组成,一个源程序文件可以为多个C程序共用。
(3)一个C程序中一定要有一个名为main的主函数,执行时总是从主函数开始,其它函数只有被调用时才会执行,执行完毕返回到调用处继续执行,正常情况下总是在主函数结束执行。
(4)所有的函数是平行的,即在定义时是互相独立的,主函数可以调用其它函数,其它函数之间可以互相调用,但其它函数不能调用主函数。
(5)从用户使用的角度看,函数可分为标准函数(库函数)和用户自定义函数。
(6)从函数的形式看,函数可分为无参函数和有参函数。