文档章节

lua中print

andrew810810
 andrew810810
发布于 2017/02/17 15:15
字数 293
阅读 45
收藏 0
Lua

reference:

http://www.lua.org/manual/5.3/manual.html

 

print (···)

Receives any number of arguments and prints their values to stdout, using the tostring function to convert each argument to a string. print is not intended for formatted output, but only as a quick way to show a value, for instance for debugging. For complete control over the output, use string.format andio.write.

 

tostring (v)

Receives a value of any type and converts it to a string in a human-readable format. (For complete control of how numbers are converted, usestring.format.)

If the metatable of v has a __tostring field, then tostring calls the corresponding value with v as argument, and uses the result of the call as its result.

示例:

a = {5, 6}
print(a)
--用c来做Metatable
c = {}
c.__tostring =function(set)
    local s = "{" 
    local sep = ""
    for _,e in pairs(set) do
        s = s .. sep .. e
        sep = ", "
    end 
return s .. "}" 
end

setmetatable(a, c)
print(a)

 

执行结果:

table: 0x1041150
{5, 6}

 

注释:

1. 调用第一个打印print(a),表示a为一个table,以及对应的地址。即print 函数调用 tostring 来格式化的输出。

2.调用第二个打印print(a),结果为__tostring的返回值。即当格式化一个对象的时候,tostring 会首先检查对象是否存在一个带有__tostring 域的 metatable。如果存在则以对象作为参数调用对应的函数来完成格式化,返回的结果即为 tostring 的结果。

© 著作权归作者所有

共有 人打赏支持
andrew810810
粉丝 3
博文 141
码字总数 117648
作品 0
朝阳
私信 提问
Lua Starter

标签: Lua Lua starter Lua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。Lua 是巴西里约热...

维特的烦恼
2016/07/21
486
0
cocos2dx-Lua中出现的问题

1,在Lua中print输出失效的问题 在main.lua中添加print=release_print ;

乐逍遥jun
2016/02/22
5
0
Lua脚本语言简明入门教程

Lua知识备忘录 http://www.cnblogs.com/cswuyg/p/5049935.html 这篇文章主要介绍了Lua脚本语言简明入门教程,本文简洁干练,可以让一个有编程基础的快速的学会Lua脚本语言,需要的朋友可以参考下...

八戒_o
2016/01/12
197
0
内置变量与原生shell脚本运行

xmake在xmake.lua中提供了 的语法,来支持内置变量的获取,例如: 它将会在在实际编译的时候,将内置的 变量转换为实际的构建输出目录: 并且这些变量在自定义脚本中,也是可以支持的,例如:...

ruki
2016/07/19
10
0
Programming in lua 杂记(转)

1,loadstring 编译的时候不关心词法范围: local i = 0 f = loadstring("i = i + 1") g = function () i = i + 1 end 这个例子中, 和想象的一样g 使用局部变量i , 然而f 使用全局变量i ; ...

jeffjade
2014/11/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

oh-my-zsh 自定义

GitHub 地址 基于 oh-my-zsh 的自定义配置,增加了一些个人常用插件与皮肤。 采用的是 git submodule 来维护,包括 oh-my-zsh,之所以这么搞,主要是手头有多台 linux 需要维护, 每台机器、...

郁也风
59分钟前
4
0
Docker安装踩坑:E_FAIL 0x80004005的解决

参考 菜鸟教程--Windows Docker 安装 http://www.runoob.com/docker/windows-docker-install.html 官方文档-Install Docker Toolbox on Windows https://docs.docker.com/toolbox/toolbox_in......

karma123
今天
4
0
js垃圾回收机制和引起内存泄漏的操作

JS的垃圾回收机制了解吗? Js具有自动垃圾回收机制。垃圾收集器会按照固定的时间间隔周期性的执行。 JS中最常见的垃圾回收方式是标记清除。 工作原理:是当变量进入环境时,将这个变量标记为“...

Jack088
昨天
17
0
大数据教程(10.1)倒排索引建立

前面博主介绍了sql中join功能的大数据实现,本节将继续为小伙伴们分享倒排索引的建立。 一、需求 在很多项目中,我们需要对我们的文档建立索引(如:论坛帖子);我们需要记录某个词在各个文...

em_aaron
昨天
27
0
"errcode": 41001, "errmsg": "access_token missing hint: [w.ILza05728877!]"

Postman获取微信小程序码的时候报错, errcode: 41001, errmsg: access_token missing hint 查看小程序开发api指南,原来access_token是直接当作parameter的(写在url之后),scene参数一定要...

两广总督bogang
昨天
31
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部