📜  Golang 中的 fmt.Sscanln()函数示例(1)

📅  最后修改于: 2023-12-03 14:41:33.898000             🧑  作者: Mango

Golang 中的 fmt.Sscanln() 函数

fmt.Sscanln() 是 Golang 中的一个函数,它可以将一个字符串进行解析,将其转换为指定的格式,然后将结果写入输出列表中。

语法
func Sscanln(str string, a ...interface{}) (n int, err error)

Sscanln() 接收两个参数:

  • str 参数是需要被解析的字符串。
  • a... 参数是需要填充的输出列表。
功能

类似于其他语言中的 scanf 函数,Sscanln() 可以将字符串格式化为输入参数提供的各种类型。

如果您希望将字符串转换为多个值,并且这些值之间由空格分隔,那么 Sscanln() 可以快速解析并填充输出列表。

示例

以下是 Sscanln() 函数的示例:

package main

import (
	"fmt"
)

func main() {
	var name string
	var age int

	inputString := "John 30"

	n, err := fmt.Sscanln(inputString, &name, &age)
	if err != nil {
		fmt.Println(err)
		return
	}

	fmt.Printf("解析了 %d 个参数\n", n)
	fmt.Printf("name = %s, age = %d\n", name, age)
}

代码分析:

  1. 导入了 fmt 包。
  2. 定义一个包含 nameage 的变量。
  3. 定义输入字符串 inputString
  4. 调用 Sscanln() 函数并将其结果存储为 nerr
  5. 如果发生错误,则打印错误并结束程序。
  6. 输出 n,表示函数成功解析了多少个参数。
  7. 输出 nameage

输出结果:

解析了 2 个参数
name = John, age = 30
总结

Sscanln() 函数是 Golang 中一个非常方便的函数,可以将字符串快速解析并存储到对应的变量中。如果您希望从用户输入中读取多个值,则 Sscanln() 函数非常适合您。