😎

Go 出力周りまとめ

2023/02/09に公開

背景・目的

AtCoder(競技プログラミング)をGoで参加しているときに、出力周り(print)がわからなくなったので書きながら、自分の理解を深めます。

Go 出力するときのパッケージ・関数

Golangで標準出力するには、fmtパッケージが良さそう。
fmtパッケージの以下の関数が主に使われるらしい。

  • Print()
  • Printf()
  • Println()

実行環境はGo playground
https://go.dev/play/

fmt.Print()

改行なしで出力する

package main

import "fmt"

func main() {
	num := 1
	fmt.Print("Hello, 世界")
	fmt.Print(num)
	// Hello, 世界1
	
	num := 1
	word := "hello"
	fmt.Print(num, word)
	//複数の引数を渡せるがスペースなどの区切りはない
	//1hello
}

fmt.Println()

fmt.Printを改行した関数と理解しています。
説明は割愛

fmt.Printf()

Formatを指定して出力する
第一引数でFormat, 第二引数以降で渡した情報をFormatかけて出力

package main

import "fmt"

func main() {
	a := 1
	fmt.Printf("aの値は%dです", a)
}
// aの値は1です

Format一覧

%v デフォルトフォーマット
%d  整数
%g 少数
%s 文字列
%t  論理値bool
&p Channel, Pointer

エスケープ記号

\n 改行
\t タブ
\s スペース

Discussion