一、前言
仍然好多和C语言类似,计算机的学生应该是很容易入门这一环节,我还在最后的输入中看到了一些些Java输入的影子,而自动的变量类型推断更是有Python那个味道,正可谓几百家之所长了。
二、学习代码
package mainimport ("bufio""fmt""os"
)func main() {// 取值和取址的运算符和C一致var age int = 100fmt.Println(age)fmt.Println(&age)// 可以指定指针指向的类型,对于c的一个创新var ptr *int = &agefmt.Println(ptr)fmt.Println(*ptr)fmt.Println(age / 3)fmt.Println(100.0 / 3) // 保留了c的除法特性// 可没有了加减符号在变量前面自增自减的写法,仍然有+=等写法age++age--// 与和或、非和C语言相同var judge bool = 5 > 6fmt.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)