go语言fmt.Printf格式化输出

1.通用占位符

package main

import "fmt"

type simple struct {
	value int
}

func main() {
	var vv simple

	vvv := new(simple)

	// 通用占位符
	fmt.Println("-- 通用占位符 --")
	fmt.Printf("默认格式的值:%v \n", vv)
	fmt.Printf("包含字段名的值:%+v \n", vv)
	fmt.Printf("go语法表示的值:%#v \n", vv)
	fmt.Printf("go语法表示的类型:%T \n", vv)
	fmt.Printf("输出字面上的百分号:%%10 \n")

	// 通用占位符打印指针
	fmt.Println("-- 通用占位符打印指针 --")
	fmt.Printf("默认格式的值:%v \n", vvv)
	fmt.Printf("包含字段名的值:%+v \n", vvv)
	fmt.Printf("go语法表示的值:%#v \n", vvv)
	fmt.Printf("go语法表示的类型:%T \n", vvv)
	fmt.Printf("输出字面上的百分号:%%10 \n")

}

输出:

 2.整数占位符

package main

import "fmt"

func main() {
	//整数占位符
	v1 := 10
	v2 := 20170 //今字的码点值
	fmt.Printf("二进制:%b \n", v1)
	fmt.Printf("uincode码点值转字符:%c \n", v2)
	fmt.Printf("十进制:%d \n", v1)
	fmt.Printf("八进制:%o \n", v1)
	fmt.Printf("0o为前缀的八进制: %O \n", v1)
	fmt.Printf("用单引号把字面值包起来: %q \n", v2)
	fmt.Printf("十六进制: %x \n", v1)
	fmt.Printf("大写十六进制: %X \n", v1)
	fmt.Printf("Unicode格式: %U \n", v2)
	//宽度设置
	fmt.Printf("%v的二进制表示为:%b;go 语法表示为:%#b;指定二进制的宽度为8位,不足的补0:%08b \n", v1, v1, v1, v1)
	fmt.Printf("%v的十六进制表示为:%x; go语法表示,定宽度为8,不足的补0:%#08x \n", v1, v1, v1)
	fmt.Printf("%v的字符为:%c;指定宽度为5位,不足5位的补空格:%5c\n", v2, v2, v2)

}

输出:

 3.浮点类型

package main

import "fmt"

func main() {
	var f1 float64 = 123.789
	var f2 float64 = 12345678910.78999

	fmt.Printf("指数为二的幂的无小数科学计数法:%b \n", f1)
	fmt.Printf("科学计数法:%e \n", f1)
	fmt.Printf("科学计数法大写:%E \n", f1)
	fmt.Printf("有小数点无指数,也就是常规的浮点数格式。默认宽度和精度:%f \n", f1)
	fmt.Printf("宽度9默认精度:%9f \n", f1)
	fmt.Printf("默认宽度,精度保留2位小数%.2f \n", f1)
	fmt.Printf("宽度为9,精度保留2位小数%9.2f \n", f1)
	fmt.Printf("宽度为9,精度保留0位小数%9.f \n", f1)
	fmt.Printf("根据情况自动选择 %%e 或者 %%f 来输出,来产生更紧凑的输出(末位无0):%g %g \n", f1, f2)
	fmt.Printf("根据情况自动选择 %%E 或者 %%f 来输出,来产生更紧凑的输出(末位无0):%G %G\n", f1, f2)
	fmt.Printf("用十六进制的方式来表示:%x \n", f1)
	fmt.Printf("用十六进制的方式来表示,大写:%X \n", f1)

}

输出:

 4.字符串

package main

import "fmt"

func main() {
	var str = "今天是个好日子"
	fmt.Printf("描述一下今天:%s \n", str)
	fmt.Printf("描述一下今天(带引号):%q \n", str)
	fmt.Printf("字符串的十六进制表示,每两个字母为一个byte:%x \n", str)
	fmt.Printf("字符串的十六进制表示,空格作为分隔符:% x \n", str)

}

输出:

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值