golang fmt格式化字符串%v,%T

lanyang123456 · · 856 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

版权声明:本文为翔云原创文章,未经博主允许不得转载。 https://blog.csdn.net/lanyang123456/article/details/78172375

T常用的格式化字符串有:

%v the value in a default format
when printing structs, the plus flag (%+v) adds field names
%#v a Go-syntax representation of the value
%T a Go-syntax representation of the type of the value

不同类型默认的%v 如下:

bool: %t
int, int8 etc.: %d
uint, uint8 etc.: %d, %#x if printed with %#v
float32, complex64, etc: %g
string: %s
chan: %p
pointer: %p

对于interface{}, %v会打印实际类型的值。
举例说明如下。

example

package main

import (

        "fmt"
)


type Power struct{
        age int
        high int
        name string
}

func main() {

        var i Power = Power{age: 10, high: 178, name: "NewMan"}

        fmt.Printf("type:%T\n", i)
        fmt.Printf("value:%v\n", i)
        fmt.Printf("value+:%+v\n", i)
        fmt.Printf("value#:%#v\n", i)


        fmt.Println("========interface========")
        var interf interface{} = i
        fmt.Printf("%v\n", interf)
        fmt.Println(interf)
}

output:

type:main.Power
value:{10 178 NewMan}
value+:{age:10 high:178 name:NewMan}
value#:main.Power{age:10, high:178, name:”NewMan”}
========interface========
{10 178 NewMan}
{10 178 NewMan}


有疑问加站长微信联系(非本文作者)

本文来自:CSDN博客

感谢作者:lanyang123456

查看原文:golang fmt格式化字符串%v,%T

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

856 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传