傻瓜式的第一个go程序,然后炸了

第一个go程序,然后感受到了它的魅力

敲了第一个 hello world!,然后

package main

import 'fmt'

func main() {
    fmt.Println('hello, world!')
}

命令运行:

goearn.go:3:8: illegal rune literal

使用有道翻译了下这个错误为“非法符文文字”,然后认真检查了语法、单词是否写错、或者字母大小写等,还是未发现问题。

然后检查了文档示例,为什么都喜欢用双引号?(在PHP程序里,本着优化的原则,在不涉及解析变量时,都基本使用单引号来包装字符串,所以这是个习惯)

然后决定按照示例文档照抄过来

package main

import "fmt"

func main() {
    fmt.Println("hello, world!")
}

果然成功输出:

hello, world!

那么在go语言中的单引号和双引号的区别是什么昵?
在go语言中单引号是一个特殊的类型:rune,是指:码点字面量(Unicode code point),不做任何转义的原始内容。

本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 4

:joy:我在第一次写go代码的时候也会犯这个错误,老是打着打着打了单引号,然后就报错了。写多几次就改过来了

2年前 评论

单引号指的是ascii码对照

2年前 评论

你需要一个好点的ide来提示你,然后新手会掉进很多类似这样的坑 :smile:

2年前 评论

和C语言、Java类似几个语言的单双引号相同,单引号用在单个ASCII字符,双引号用在字符串

2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!