一、前言
仍然好多和C语言类似,计算机的学生应该是很容易入门这一环节,我还在最后的输入中看到了一些些Java输入的影子,而自动的变量类型推断更是有Python那个味道,正可谓几百家之所长了。
二、学习代码
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
// 取值和取址的运算符和C一致
var age int = 100
fmt.Println(age)
fmt.Println(&age)
// 可以指定指针指向的类型,对于c的一个创新
var ptr *int = &age
fmt.Println(ptr)
fmt.Println(*ptr)
fmt.Println(age / 3)
fmt.Println(100.0 / 3) // 保留了c的除法特性
// 可没有了加减符号在变量前面自增自减的写法,仍然有+=等写法
age++
age--
// 与和或、非和C语言相同
var judge bool = 5 > 6
fmt.Println(judge)
// 类似于java语言的输入方式
scanin := bufio.NewReader(os.Stdin)
str, _, _ := scanin.ReadLine()
fmt.Printf("%s\n", str)
// 符号优先级不用理会,搞不清楚就加括号!!!
var name string
// 下面两种方式,但是字符串有空格就不行!
fmt.Scanln(&name) // 回车自动推断类型
fmt.Println(name) // 类似于C语言的
fmt.Scanf("%s", &name)
fmt.Println(name)
}
三、附录
Java风格的输入:
GO语言中文文档里面对于bufio的一些解释:(https://studygolang.com/pkgdoc)