quick lua 能用printf函数打印吗

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了quick lua 能用printf函数打印吗相关的知识,希望对你有一定的参考价值。

参考技术A quick lua 能用printf函数打印.
在C中调用Lua函数的API主要由以下几个:
(1)void lua_call (lua_State *L, int nargs, int nresults);
函数调用,nargs表示参数的个数,nresults表示返回值的个数
首先将lua函数压栈,然后将参数依次压栈,最后调用函数即可
函数调用时,参数和函数都会pop出栈,调用返回后,结果会push进栈
nresults==LUA_MULTRET,所有的返回值都会push进栈
nresults!=LUA_MULTRET,返回值个数根据nresults来调整
Lua语句:
a = f("how", t.x, 14)
在C中的实现:
lua_getglobal(L, "f");        // 函数入栈
lua_pushstring(L, "how");     // 参数1入栈
lua_getglobal(L, "t");       // 表t入栈
lua_getfield(L, -1, "x");      // 参数2入栈
lua_remove(L, -2);        // 跳t出栈
lua_pushinteger(L, 14);     // 参数3入栈
lua_call(L, 3, 1);        // 调用函数,参数和函数都会出栈
lua_setglobal(L, "a");     // 给a赋值,栈顶出栈
上述代码执行完毕后,堆栈状态恢复原样。

linux 操作系统下能用fprintf() 及fscanf()等函数吗?它们与c语言中的用法一样吗?

Linux下 都有C语言的编译器,可以编译 C语言代码,所以fprintf() 及fscanf()等函数都能用。

另外,
(1)Linux上的输出命令:printf
printf 命令,格式化输出,是echo 命令的增强.它是C 语言printf()库函数的一个有限的变形,
并且在语法上有些不同.
printf format-string... parameter...
这是Bash 的内建版本,与/bin/printf 或/usr/bin/printf 命令不同.想更深入的了解,请
察看printf(系统命令)的man 页.

(2)Linux Shell 有一版本为CShell,语法与C有很大相似之处。
参考技术A 可以用,用法一样。

以上是关于quick lua 能用printf函数打印吗的主要内容,如果未能解决你的问题,请参考以下文章

hiredis 能用在3.0版本 redis集群吗

I52400主机,能用pr软件吗

linux 操作系统下能用fprintf() 及fscanf()等函数吗?它们与c语言中的用法一样吗?

请大虾们解答一下,在QT中我能使用c语言的printf函数吗?如何使用?谢谢

hiredis 能用在3.0版本 redis集群吗

unity图表插件能用lua么