首页  >  文章  >  后端开发  >  为什么我在 Go 中遇到“意外的分号或换行符”?

为什么我在 Go 中遇到“意外的分号或换行符”?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-11-02 23:55:29123浏览

Why Am I Getting

Go 中的 Unexpected Semicolon or Newline Before Else

当遇到错误“unexpected semicolon or newline before else”时,尽管缺少这些字符,该问题通常源于“else”语句的错误放置。与其他语言不同,Go 要求“else”语句与前面的 if 块的右大括号放在同一行。这可确保“else”语句与 if 块属于同一复合语句。

示例:

<code class="go">func main() {
  if len(s) == 0 {
    return
  } else {
    // Code
  }
}</code>

解释:

在上面的代码中,“else”语句与 if 块的右大括号放在单独的一行上,这是不正确的。要解决此问题,必须将“else”语句移至与右大括号相同的行:

<code class="go">func main() {
  if len(s) == 0 { return } else { // Code }
}</code>

其他错误

第 28 行的错误消息32 表示“函数体外部的非声明语句”,表明 main() 函数外部可能存在应声明为函数或移至 main() 函数体内部的语句。

结论:

通过解决 main() 函数外部“else”语句和潜在额外语句的放置问题,可以解决这些错误,使代码能够按预期运行。

以上是为什么我在 Go 中遇到“意外的分号或换行符”?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn