当我尝试使用6g编译器从go语言网站的首页编译示例时,我收到此错误:
hello.go:5: syntax error near "<string>"
我search on Google reveals有一些人经历过这种情况,但我找不到任何解决方案。答案总是似乎是:“这对我有用,你必须做错事”。
我发现了一个可以追溯到5个月的description of the problem,所以我怀疑这与我正在使用的特定版本的go没有问题。此外,我试过拉新版本,问题仍然存在。
有问题的源代码:
package main
import "fmt"
func main() {
fmt.Println("Hello, 世界")
}
顺便说一句,我将源代码保存为UTF-8,其中包含用于换行的LF。它不应该是文本编码问题。我也试过不同的字符串,不包含“异国情调”字符
答案 0 :(得分:1)
您的特殊字符可能会导致与编译器冲突。尝试使用notepad(ANSI,UTF-8)以多种方式保存此代码,并查看编译器是否将采用其中任何一种。
答案 1 :(得分:1)
当出现编码问题时,这类问题很典型。
如果您使用的是Windows,Notepad++之类的编辑器可以在多种编码格式之间进行转换,因此我建议您在不使用BOM的情况下将源转换为UTF-8,然后重新编译。
如果您使用的是Linux,则可以使用guide available向您展示如何确定和更改文档的编码。
答案 2 :(得分:1)
尝试“哪6g”。 你可能会选择一个旧版本。 至少那是我的情况。在我的路上,我有一个旧的2009年版本。 在修复环境之后,它起作用了。