Golang--fmt.Println()
Golang入门第一天
按照网上入门教程配置好开发环境后,我开始了HelloWorld。
遇到的第一个功能就是输出,这里的fmt.Println()
fmt.Println("姓名\t年龄\t籍贯\t住址\nJone\t22\t河南\t哪里啊啊啊啊\n")
习惯性再末尾添加\n,然后报错如下:
#command-line-arguments
.\out.go:5:22: invalid character U+005C ''
.\out.go:5:23: syntax error: unexpected t, expecting comma or )
去了解了一下,知道,println会自动在字符间添加空格,并在句尾添加换行
其具体实现过程如下:(截取的部分源码)
func (p *pp) doPrintln(a []interface{}) {
for argNum, arg := range a {
if argNum > 0 {
p.buf.writeByte(' ')
}
p.printArg(arg, 'v')
}
p.buf.writeByte('\n')
}
这个函数的思路很清晰。遍历所有传入的需要print的参数,在除了第一个参数以外的所有参数的前面加上一个空格,写入buffer中。然后调用printArg函数,再将换行符写入buffer中。(参考:https://studygolang.com/articles/21164)
不妨对比一下差别
fmt.Println("test", "hello", "word") // test hello word
fmt.Print("test", "hello", "word") // testhelloword%
###另外我刚好在网上看到了我正在疑惑的问题:在go中的单引号和双引号有什么区别呢?下面我们通过一个表格来对比一下在不同的语言中,单引号和双引号的区别。(参考:https://studygolang.com/articles/21164)
直接粘贴过来,做个记录:
标签:
Golang
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了