ホームページ  >  記事  >  バックエンド開発  >  Golang プログラムのコマンド ライン パラメータがパラメータとして正しく受け入れられない

Golang プログラムのコマンド ライン パラメータがパラメータとして正しく受け入れられない

王林
王林転載
2024-02-09 09:09:13888ブラウズ

Golang 程序中命令行参数未正确接受作为参数

#php エディタ Baicao は、Golang プログラムを開発するときに、コマンド ライン パラメータがパラメータとして正しく受け入れられないという問題に遭遇することがあります。この問題により、プログラムが適切に実行されなかったり、正しい入力データが取得されなかったりする可能性があります。この問題を解決するには、プログラムのコマンド ライン パラメーター処理部分を注意深くチェックして、パラメーターが正しく受信され、プログラム内で正しく使用されていることを確認する必要があります。この記事では、開発者がコマンド ライン パラメーターをより適切に処理できるように、一般的なエラーの原因と解決策をいくつか紹介します。

質問の内容

私は golang を初めて使用するもので、コマンド ライン ターミナルを使用して簡単なクイズ アプリケーションを作成するオンライン チュートリアルに従っています。しかし、自分のマシンでコードを実行すると、最初の質問の後、残りの質問がペアになってしまい、各質問に対する回答を受け付けなくなります。

スクリーンショットの例:

プログラムのプロセスは非常に簡単です -

  1. ローカル CSV ファイルからの入力取得の問題
  2. 各質問を印刷し、ユーザーが入力した回答を受け入れます
  3. 正解の数を保持し、最後に表示します。

csv ファイルも非常に短い -

リーリー

これが完全なプログラムです -

リーリー

コードのすべての行を試しましたが、解決できません。誰かが私が間違っていることを指摘してもらえますか?

回避策

Windows ( コマンド プロンプト で実行) で問題を再現できます。しかし、Linux では問題ありません。

次の変更により問題が解決されます:

リーリー

これは既知の問題であり、fmt: scanf は Windows と Linux で異なる動作をする #23562 として報告されています。保留中の修正もあります。残念ながら、cl には未解決のコメントがあり、長い間ブロックされています。

以上がGolang プログラムのコマンド ライン パラメータがパラメータとして正しく受け入れられないの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。