0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【随時更新中!】Go言語で標準入力から値の受け取り方

Last updated at Posted at 2023-03-28

文字列を一行受け取る。

package main

// データの読み込みに必要なパッケージをインポートしている
import (
    "fmt"
    "bufio"
    "os"
)
func main() {
    // データを読み込んでいる
    // scは読み込み機能を割り当てる変数
    sc := bufio.NewScanner(os.Stdin)
    
    sc.Scan()
    // 受け取ったデータを変数sayに代入している。
	say := sc.Text()
	fmt.Println("Hello " + say)
}

標準入力
world
実行結果
Hello world

調べたこと

Go言語の標準ライブラリ(なんかパッケージって呼ばれてる。)
・fmt(パッケージ)
フォーマットされた入出力をサポートする関数を提供します。
例えば、Println関数は文字列をコンソールに表示するために使用されます。
・bufio(パッケージ)
高速な入出力機能を提供します。
Scanner型は、ファイルや標準入力からテキストを読み取るために使用されます。
・os(パッケージ)
OSの機能を利用するための関数を提供します。
Stdin変数は、標準入力を表すファイルオブジェクトです。
Stdout変数は、標準出力を表すファイルオブジェクトです。

パッケージの中に関数とメソッドがあるらしい

- fmt(パッケージ)
    - 関数
        - Println
- bufio(パッケージ)
    - 関数
        - Scan
            - Scanner型のオブジェクトから1行のテキストを読み取り、そのテキストを文字列として返します
        - NewScanner
    - メソッド
        - Text
- os(パッケージ)
    - 

Go言語のパッケージの種類

・標準パッケージ: Go言語の開発者によって提供される公式のパッケージであり、Go言語のインストールに含まれています。

・サードパーティのパッケージ: Go言語の開発者以外が提供するパッケージであり、"go get" コマンドを使用してダウンロードすることができます。

・プロジェクト固有のパッケージ: 特定のプロジェクトで使用するために作成されたパッケージであり、開発者が独自に作成することができます。

・ローカルパッケージ: 開発者が作成したパッケージであり、プロジェクト内で使用するためにローカルに保存されます。

・外部パッケージ: Go言語のプログラムから使用する外部のライブラリやAPIなどのパッケージです。

整数を一行受け取る。

package main

import (
    "fmt"
    "bufio"
    "os"
    "strconv"
)

func main() {
    sc := bufio.NewScanner(os.Stdin)
    
    sc.Scan()
    number, _ := strconv.Atoi(sc.Text())
    fmt.Println(number)
    fmt.Println(number * 100)
}

標準入力
10
実行結果
10
1000

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?