Golang的标准输入输出
Golang的标准输入输出
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
在很多情况下,我们希望用户通过键盘输入一个数值,存储到某个变量中,然后将该变量的值取出来,进行操作。这时候就得用到标准输入了,当然有时候我们也得用到标准输出,接下来咱们九一起来学习一下吧。
一.标准输入
1>.fmt.Scan应用案例(推荐使用)
package main
import "fmt"
func main() {
var name string
var age int
/*
使用"&"获取score变量的内存地址(即取变量内存地址的运算符),通过键盘输入为score变量指向的内存地址赋初值。
fmt.Scan是一个阻塞的函数,如果它获取不到数据就会一直阻塞哟。
fmt.Scan可以接收多个参数,用户输入参数默认使用空格或者回车换行符分割输入设备传入的参数,直到接收所有的参数为止
*/
fmt.Scan(&name, &age)
fmt.Println(name, age)
}

2>.fmt.Scanln应用案例
package main
import "fmt"
func main() {
var name string
var age int
/*
和fmt.Scan功能类似,fmt.Scanln也是一个阻塞的函数,如果它获取不到数据就会一直阻塞哟。
fmt.Scanln也可以接收多个参数,用户输入参数默认使用空格分割输入设备传入的参数,遇到回车换行符就结束接收参数
*/
fmt.Scanln(&name, &age)
fmt.Println(name, age)
}

3>.fmt.Scanf应用案例
package main
import "fmt"
func main() {
var name string
var age int
/*
和fmt.Scanln功能类似,fmt.Scanf也是一个阻塞的函数,如果它获取不到数据就会一直阻塞哟。
其实fmt.Scanln和fmt.Scanf可都以接收多个参数,用户输入参数默认使用空格分割输入设备传入的参数,遇到回车换行符就结束接收参数
唯一区别就是可以格式化用户输入的数据类型,如下所示:
%s:
表示接收的参数会被转换成一个字符串类型,赋值给变量
%d:
表示接收的参数会被转换成一个整形类型,赋值给变量
生产环境中使用fmt.Scanln和fmt.Scanf的情况相对较少,一般使用fmt.Scan的情况较多~
*/
fmt.Scanf("%s%d", &name, &age)
fmt.Println(name, age)
}

二.标准输出
1>.fmt.Println应用案例
package main
import "fmt"
func main() {
name := "尹正杰"
age :=
fmt.Println("======================")
/*
将变量的值取出来打印并换行
*/
fmt.Println(name, age)
fmt.Println("======================")
}

2>.fmt.Print应用案例
package main
import "fmt"
func main() {
name := "尹正杰"
age :=
fmt.Println("======================")
/*
将变量的值取出来打印但不换行
*/
fmt.Print(name, age)
fmt.Println("======================")
}

3>.fmt.Printf应用案例
package main
import "fmt"
func main() {
name := "尹正杰"
age :=
fmt.Println("======================")
/*
常用的占位符:
%s:
表示一个字符串类型
%d:
表示一个整形类型
%T:
表示一个变量对应的数据类型
%f:
表示一个浮点数类型
%t:
表示一个布尔类型
%c:
表示一个字符类型
%p:
表示一个指针类型
\t:
表示一个制表符
\n:
表示换行符
可以使用占位符格式化打印结果,如下所示。
*/
fmt.Printf("姓名:%s\t年龄:%d\n", name, age)
fmt.Println("======================")
}

Golang的标准输入输出的更多相关文章
- C/C++ 标准输入输出重定向
转载自:http://www.cnblogs.com/hjslovewcl/archive/2011/01/10/2314356.html 这个对经常在OJ上做题的童鞋们很有用.OJ基本都是用标准输入 ...
- C语言的标准输入输出
1. 标准输入输出 标准输入.输出主要由缓冲区和操作方法两部分组.缓冲区实际上可以看做内存中的字符串数组,而操作方法主要是指printf.scanf.puts.gets,getcha.putcahr等 ...
- linux标准输入输出及错误输出
Linux Shell 环境中支持输入输出重定向,用符号"<"和">"来表示. 0.1和2分别表示标准输入.标准输出和标准错误信息输出,可以用来指定 ...
- 【转载】标准输入输出重定向(Visual C++)
原文:标准输入输出重定向(Visual C++) 引言 本人偶得在 Visual C++ 中进行输入输出重定向的办法,比通常的做法“freopen”更加的灵活和方便,特在此共享.目前,代码正在不断地摸 ...
- linux标准输入输出2>&1
linux中有三种标准输入输出,分别是STDIN,STDOUT,STDERR,对应的数字是0,1,2. STDIN是标准输入,默认从键盘读取信息:STDOUT是标准输出,默认将输出结果输出至终 ...
- C++之标准输入输出
由于在公司,无法上传图片,往后补上. 关于C++的标准输入输出,其实就相当于C语言的scanf和printf,只不过C++用cin和cout这样称为流的机制. #include <iostrea ...
- 标准输入输出 sys.stdin与sys.stdin
1.python中的标准输入输出 如果需要更好的控制输出,而print不能满足需求,input也不能 sys.stdout,sys.stdin,sys.stderr就是你需要的. 2.输入:sys.s ...
- Python学习笔记015——文件file的常规操作之三(标准输入输出文件)
1 标准输入输出文件 在Python中,模块sys中含有标准的输入输出文件 sys.stdin 标准输入方法(一般是键盘) sys.stdout 标准输出方法(到显示器的缓冲输出) sys ...
- Python基础笔记系列十一:标准输入输出、文件读写和指针等操作
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! 标准输入输出一.输入 在sublime中这个时候需要安装SublimeRE ...
随机推荐
- MessageBox函数
<Windows程序设计>(第五版)(美Charles Petzold著) https://docs.microsoft.com/zh-cn/windows/desktop/apiinde ...
- 【PAT甲级】1014 Waiting in Line (30 分)(队列维护)
题面: 输入四个正整数N,M,K,Q(N<=20,M<=10,K,Q<=1000),N为银行窗口数量,M为黄线内最大人数,K为需要服务的人数,Q为查询次数.输入K个正整数,分别代表每 ...
- 关于hrf图的做法
要拿matlab 的spm 包功能做 Model specification ,review and estimation specify1st level 第二张图是在建模以后,通过spm中的res ...
- UniGui学习之部署(06)只 有Loading...,
procedure TUniServerModule.UniGUIServerModuleBeforeInit(Sender: TObject);begin Self.ExtRoot:='ext-6. ...
- Using SmartAssembly with MSBuild
SmartAssembly 6 SmartAssembly 6 documentation Building your assembly Using SmartAssembly with MSBuil ...
- Java实现图片内容无损任意角度旋转
转自:http://blog.csdn.net/heliang7/article/details/7309394 主要问题是如何在图片做旋转后计算出新图片的长宽. 在java 2d和基本math库的帮 ...
- 吴裕雄 Bootstrap 前端框架开发——Bootstrap 表单:选择框(Select)
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- B. Shortest Cycle 无向图求最小环
题意: 给定 n 个点,每个点有一个权值a[i],如果a[u]&a[v] != 0,那么就可以在(u,v)之间连一条边,求最后图的最小环(环由几个点构成) 题解:逻辑运算 & 是二进制 ...
- Mybatis入门(五)属性名和字段名不一致解决
在学Mybatis的时候都需要创建一个实体类,但创建实体类的变量必须和数据库的一样,这章就来解决这个有趣的问题 目录: 问题是这样: 输出的结果是: password为空,这就很难受: 解决方法: 第 ...
- scikitlearn库中调用k-近邻算法的操作步骤
1.k近邻算法可以说是唯一一个没有训练过程的机器学习算法,它含有训练基础数据集,但是是一种没有模型的算法,为了将其和其他算法进行统一,我们把它的训练数据集当做它的模型本身.2.在scikitlearn ...