Windows上 go语言编译错误 package main: read unexpected NUL in input

[前言]今天在win7上安装了golang(go语言)开发环境。按照Runoob教程上提供的说明,进行了环境的配置。但是,在进行Hello world测试时,出现了 package main: read unexpected NUL in input 错误。开始以为是环境变量错误,重新配置了几遍,还是没有解决问题。最后,发现是源程序文档编码格式错误


解决办法

使用notepad进行源代码文档编辑,选择编码格式为UTF-8格式;


错误原因

As a side note: Windows has funny (somewhat inaccurate) names:

Both UTF-8 and UTF-16 formats use unicode code points. Windows calls UTF-16
LE "Unicode". As go source code uses UTF-8, typical ASCII range characters
are 1 byte each
'h' 'e' 'l' 'l' 'o'
while UTF-16 are two bytes each:
0 'h' 0 'e' 0 'l' 0 'l' 0 'o'

Thus because the Go compiler expects UTF-8, it interperts the UTF-16 zero
bytes as invalid NULL characters.
-Daniel

参考:[go-nuts] Hello World - unexpected NUL in input



  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值