go scanf
时间: 2023-07-08 09:12:18 浏览: 47
Go语言中没有scanf函数,但有类似功能的fmt包提供了Scan、Scanf和Scanln函数,可以用来从标准输入中读取用户输入的数据。这些函数都需要传入一个变量的地址,用于存储读取到的数据。
下面是三个函数的简单介绍:
1. Scan函数:从标准输入中读取用户输入的数据,以空格或换行符作为分隔符,可以读取多个值,但必须手动处理换行符。
示例代码:
```
var name string
var age int
fmt.Println("请输入姓名和年龄,以空格分隔:")
fmt.Scan(&name, &age)
fmt.Printf("你输入的姓名是:%s,年龄是:%d\n", name, age)
```
2. Scanf函数:从标准输入中读取用户输入的数据,以格式化字符串中的格式为准,可以读取多个值,但必须手动处理换行符。
示例代码:
```
var name string
var age int
fmt.Println("请输入姓名和年龄,以空格分隔:")
fmt.Scanf("%s %d", &name, &age)
fmt.Printf("你输入的姓名是:%s,年龄是:%d\n", name, age)
```
3. Scanln函数:从标准输入中读取用户输入的数据,以换行符作为分隔符,可以读取多个值,但不需要手动处理换行符。
示例代码:
```
var name string
var age int
fmt.Println("请输入姓名和年龄,以回车结束:")
fmt.Scanln(&name, &age)
fmt.Printf("你输入的姓名是:%s,年龄是:%d\n", name, age)
```
需要注意的是,这些函数都是阻塞式的,即程序会在执行这些函数时停止运行,直到读取到用户输入的数据才会继续执行后续代码。如果用户输入的数据格式不符合预期,程序可能会出现异常,需要进行异常处理。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)