golang_fmt包中Scanf和Sscanf的

 

func Scanf

func Scanf(format string, a ...interface{}) (n int, err error)

 

Scanf从标准输入扫描文本,根据format 参数指定的格式将成功读取的空白分隔的值保存进成功传递给本函数的参数。返回成功扫描的条目个数和遇到的任何错误。

demo

package main

import "fmt"

func main() {
	var name string
	fmt.Printf("请输入内容:")
	fmt.Scan(&name)
	fmt.Println("name:", name)

	fmt.Printf("请输入内容2:")
	fmt.Scanf("%s", &name)
	fmt.Println("name:", name)
}

 

 

output:

请输入内容:2345
name: 2345
请输入内容2:1234
name: 1234

func Sscanf

func Sscanf(str string, format string, a ...interface{}) (n int, err error)

 

Sscanf从字符串str扫描文本,根据format 参数指定的格式将成功读取的空白分隔的值保存进成功传递给本函数的参数。返回成功扫描的条目个数和遇到的任何错误。

demo

package main

import "fmt"

func main() {
	s, t := "test123", ""
	fmt.Sscan(s, &t)
	fmt.Println("s:", s)
	fmt.Println("t:", t)	// t: test123 将s的内容传给t

	fmt.Sscanln(s, &t)
	fmt.Println("s:", s)
	fmt.Println("t:", t)	// t: test123 将s的内容传给t

	_, err := fmt.Sscanf(s, "test%s", &t)
	fmt.Println("err:", err)
	fmt.Println("s:", s)	// s: test123
	fmt.Println("t:", t)	// t: 123 将t从s中去掉“test”后提取出来
}
posted @   技术颜良  阅读(413)  评论(0编辑  收藏  举报
编辑推荐:
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
阅读排行:
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期
· 全程使用 AI 从 0 到 1 写了个小工具
· 从文本到图像:SSE 如何助力 AI 内容实时呈现?(Typescript篇)
历史上的今天:
2017-12-23 运维的危险命令,用了必死(1)
2017-12-23 xtrabackup备份MySQL
2017-12-23 利用ansible-playbook从测试环境获取tomcat中java项目新版本发布到生产环境
2017-12-23 Ansible安装部署及常用模块详解
2017-12-23 mysql状态查看 QPS/TPS/缓存命中率查看
2017-12-23 OpenVPN的搭建
2017-12-23 HSRP vs VRRP
点击右上角即可分享
微信分享提示