ホームページ >バックエンド開発 >Golang >fmt.Scanf 関数を使用して、入力からフォーマットされたデータを読み取り、それを変数に割り当てます

fmt.Scanf 関数を使用して、入力からフォーマットされたデータを読み取り、それを変数に割り当てます

PHPz
PHPzオリジナル
2023-07-24 20:01:561363ブラウズ

fmt.Scanf 関数を使用して、入力から書式設定されたデータを読み取り、変数に代入します

Go 言語では、多くの場合、ユーザーが入力したデータを標準入力から読み取り、代入する必要があります。変数に値を代入します。 fmt パッケージの Scanf 関数は、この機能の実現に役立ちます。この記事では、Scanf 関数を使用して、入力から書式設定されたデータを読み取り、それを変数に割り当てる方法を紹介します。

まず、Scanf 関数の基本的な構文を見てみましょう:

func Scanf(format string, a ...interface{}) (n int, err error)

その中で、format は入力データの形式を指定するために使用される文字列で、a は割り当てられる一連の値。変数。ここでの...interface{} は、 a が異なる型の 1 つ以上の変数になり得ることを示しています。関数は入力からデータを順番に読み取り、それを a の対応する変数に割り当てます。

次に、いくつかの具体的な例を通して、Scanf 関数の使用方法を説明します。

例 1: 整数の読み取り

入力から整数を読み取り、それを変数 num に割り当てる必要があるとします。コードは次のとおりです。

package main

import "fmt"

func main() {
    var num int
    fmt.Println("请输入一个整数:")
    fmt.Scanf("%d", &num)
    fmt.Printf("您输入的整数是:%d
", num)
}

このプログラムを実行すると、「整数を入力してください:」が出力され、ユーザーがターミナルで入力するのを待ちます。ユーザーが完全な数値を入力して Enter キーを押すと、プログラムは整数を読み取り、それを num 変数に割り当て、出力します。

例 2: 複数のデータの読み取り

入力から文字列と整数を読み取り、それらを変数 name と age に割り当てる必要があるとします。コードは次のとおりです。

package main

import "fmt"

func main() {
    var name string
    var age int
    fmt.Println("请输入您的姓名和年龄:")
    fmt.Scanf("%s %d", &name, &age)
    fmt.Printf("您的姓名是:%s,年龄是:%d
", name, age)
}

プログラムを実行すると、「名前と年齢を入力してください:」が出力され、ユーザーがターミナルに入力するのを待ちます。ユーザーが名前と年齢を入力して Enter キーを押すと、プログラムは入力されたデータを読み取り、名前と年齢の変数に割り当てて、出力します。

データ型が異なると、フォーマット文字列で異なるプレースホルダーが使用されることに注意してください。たとえば、%d は整数、%s は文字列、%f は浮動小数点数などを表します。フォーマット文字列内のプレースホルダーの順序は、割り当てられる変数の順序と一致する必要があります。

概要:

この記事では、fmt パッケージの Scanf 関数を使用して、入力から書式設定されたデータを読み取り、それを変数に割り当てる方法を紹介します。このようにして、ユーザーの入力から必要なデータを簡単に取得し、プログラム内で後続の処理を実行できます。 Scanf 関数を柔軟に使用して、実際のニーズに応じてさまざまな種類のデータを読み取り、対応する操作を実行できます。

以上がfmt.Scanf 関数を使用して、入力からフォーマットされたデータを読み取り、それを変数に割り当てますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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