ホームページ >バックエンド開発 >Golang >Go で「予期しないセミコロンまたは改行が前に来る」のはなぜですか?

Go で「予期しないセミコロンまたは改行が前に来る」のはなぜですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-02 23:55:29214ブラウズ

Why Am I Getting

Go で Else の前に予期しないセミコロンまたは改行があります

これらがないにもかかわらず、「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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。