Go-标准库-fmt(三)

2023-04-21 14:51:35 浏览数 (1)

fmt.Scanln

fmt.Scanln 函数和 fmt.Scan 函数类似,只是它需要读取一整行数据,以回车符为结束符。其基本语法如下:

代码语言:javascript复制
func Scanln(a ...interface{}) (n int, err error)

例如:

代码语言:javascript复制
var name string
var age int

fmt.Scanln(&name, &age)
fmt.Printf("name: %s, age: %dn", name, age)

上述代码将从标准输入中读取一行数据,以回车符为结束符,输出变量的值。

fmt.Fscan

fmt.Fscan 函数用于从 io.Reader 接口中读取数据,以空格或换行符为分隔符,赋值给指定的变量。其基本语法如下:

代码语言:javascript复制
func Fscan(r io.Reader, a ...interface{}) (n int, err error)

其中,r 参数是实现了 io.Reader 接口的对象,a ...interface{} 参数是一个或多个指向变量的指针。例如:

代码语言:javascript复制
var name string
var age int

fmt.Fscan(os.Stdin, &name, &age)
fmt.Printf("name: %s, age: %dn", name, age)

上述代码将从标准输入中读取两个变量的值,以空格或换行符为分隔符,输出变量的值。

fmt.Fscanf

fmt.Fscanf 函数和 fmt.Fscan 函数类似,只是它需要指定格式化字符串,以解析输入的数据。其基本语法如下:

代码语言:javascript复制
func Fscanf(r io.Reader, format string, a ...interface{}) (n int, err error)

例如:

代码语言:javascript复制
var name string
var age int

fmt.Fscanf(os.Stdin, "%s %d", &name, &age)
fmt.Printf("name: %s, age: %dn", name, age)

上述代码将从标准输入中读取两个变量的值,按照指定的格式化字符串解析输入的数据,输出变量的值。

fmt.Fscanln

fmt.Fscanln 函数和 fmt.Fscan 函数类似,只是它需要读取一整行数据,以回车符为结束符。其基本语法如下:

代码语言:javascript复制
func Fscanln(r io.Reader, a ...interface{}) (n int, err error)

例如:

代码语言:javascript复制
var name string
var age int

fmt.Fscanln(os.Stdin, &name, &age)
fmt.Printf("name: %s, age: %dn", name, age)

上述代码将从标准输入中读取一行数据,以回车符为结束符,输出变量的值。

go

0 人点赞