Golang fmt.Printf()函数及示例
在Go语言中, fmt 包实现了类似于C语言的printf()和scanf()函数的格式化I/O。其中 fmt.Printf() 函数按照格式说明符进行格式化,然后写入标准输出。此函数是在fmt包下定义的。因此,需要导入“fmt”包才能使用这些函数。
语法:
func Printf(format string, a ...interface{}) (n int, err error)
参数: 此函数接受两个参数,如下所示:
- format string: 包含一些字符串和一些占位符。
- a …interface{}: 指定的常量变量。
返回值: 返回写入的字节数和遇到的任何写入错误。
转换字符:
| 转换字符 | 描述 |
|---|---|
| %b | 用于格式化二进制数字 |
| %o | 用于格式化八进制数字 |
| %O | 用于带有 0o 前缀的八进制数字格式化 |
| %d | 用于格式化十进制数字,其中 f 的小写字母表示 a-f |
| %x | 用于格式化十六进制数字,其中 F 的大写字母表示 A-F |
| %X | 用于格式化十六进制数字 |
| %g | 用于格式化浮点值 |
| %s | 用于格式化字符串值 |
| %t | 用于格式化 true 或 false |
| %e | 用于格式化科学计数法 |
示例1:
// Golang程序,演示如何使用fmt.Printf()函数
// 声明主要包
package main
// 导入fmt包
import (
"fmt"
)
// 调用主函数
func main() {
// 声明一些const变量
const name, dept = "GeeksforGeeks", "CS"
// 调用Printf()函数
fmt.Printf("%s是%s门户网站。\n", name, dept)
// 在Printf返回的错误中,不要特意关心任何错误。
}
输出:
GeeksforGeeks是CS门户网站。
示例2:
// Golang程序,演示如何使用fmt.Printf()函数
// 声明主要包
package main
// 导入fmt包
import (
"fmt"
)
// 调用主函数
func main() {
// 声明一些const变量
const num1, num2, num3 = 5, 10, 15
// 调用Printf()函数
fmt.Printf("%d + %d = %d\n", num1, num2, num3)
// 在Printf返回的错误中,不要特意关心任何错误。
}
输出:
5 + 10 =15
示例3:
// Golang程序,演示fmt.Printf()函数的使用
// 包含主要程序包
package main
// 导入fmt包
import (
"fmt"
)
// 调用主函数
func main(){
var str = "Geeksforgeeks"
fmt.Printf("字符串是%s \n", str)
var num1 int = 21
fmt.Printf("十进制值是%d \n", num1)
var num2 float32 = 7.786
fmt.Printf("浮点数是%g \n", num2)
var num3 int = 14
fmt.Printf("num3的二进制值是%b \n", num3)
var num4 = 4 + 1i
fmt.Printf("num4的科学计数法表示:%e \n", num4)
}
输出:
字符串是Geeksforgeeks
十进制值是21
浮点数是7.786
num3的二进制值是1110
num4的科学计数法表示:(4.000000e+00+1.000000e+00i)
极客教程