即日起在codingBlog上分享您的技术经验即可获得积分,积分可兑换现金哦。

Lua怎么样实现C的printf函数

编程语言 qq_21547919 11℃ 0评论
本文目录
[隐藏]

1.Lua实现C语言的printf函数

  • Thinking: 平时用惯了C语言的printf函数,printf函数可以很方便的实现格式输出,比如输出某十进制数的十六进制,八进制数,而Lua提供的print函数却没有这个功能,那么我能不能自己实现一个printf函数方便以后调用呢?产生这个问题后我作出如下尝试并成功实现。

1.1.1.Lua中实现printf函数的两种方法

  1. 用string.format函数实现printf函数

    function printf(str, ...)
        print(string.format(str, ...))
    end
    
    printf("%02X,%s", 11, "nihao")  
    

    输出结果为: 0B,nihao

  2. 用str:format形式实现printf函数

    function printf(str, ...)
        print(str:format(...))
    end
    
    printf("%02X, %s", 11, "nihao")  
    

    输出结果为: 0B,nihao

总结:其他方法暂时没有想到。以上两种方法起始都是借助format函数拼凑出要输出的字符串,最后使用Lua的print函数直接输出(当然也可以使用io.write输出)。果然,我还是用printf函数用惯了,啊哈哈!

转载请注明:CodingBlog » Lua怎么样实现C的printf函数

喜欢 (0)or分享 (0)
发表我的评论
取消评论

*

表情