変数の宣言と初期化

変数を使うには宣言をする必要がある。変数の宣言は var 変数名 型 という形で行う。

宣言と同時に初期化もできる。この場合には型を省略できる。

初期化しないとゼロ値に初期化される。ゼロ値とは、数値型では 0、文字列型では空文字列、bool型では false のこと。

^o^ > go run var3.go
0

false

コマンドライン引数

コマンドライン引数は C のように main 関数の引数で受け取るのではなく、os パッケージの os.Args 関数を使う。

^o^ > go build args.go

^o^ > args foo  bar baz
[args foo bar baz]

os.Args の返り値は文字列の配列。最初の要素は実行ファイル名、これは C と同じだな。

import

使用するライブラリ(パッケージ)の読み込みは import 文で行う。

読み込むパッケージが複数の場合、import 文を並べて書いてもいいけど、下のようにカッコで囲んで一つにしてもいい。

こっちのほうが、読みやすいな。

はてなダイアリーからはてなブログへ

はてなダイアリーに置いてある以前の古い記事をはてなブログに移行した。特に理由があったわけではないんだけど、なんとなく。はてなブログができてずいぶん経つし、ダイアリーはいつまであるかなー、と思ったからかな。
ともかく、はてなブログへは次のリンクからアクセスできます。

 cf. Haskellはスケるよ

文字コード

Go のソースコードは UTF-8 で書くと決まっている。UTF-8 で書いてあれば、日本語も問題なく使える。たとえ Windows でも。

^o^ > go run hello_ja_utf8.go
こんにちは!

UTF-8 以外の文字コード、例えば Shift JIS で書くと次のようにエラーになる。

^o^ > go run hello_ja_sjis.go
# command-line-arguments
.\hello_ja_sjis.go:6: invalid UTF-8 encoding

Hello, world!

気が付けば今月も20日を過ぎている。まずいな。
まあ、いい。日にちが開いてしまってけど、ちょっとずつ Go をやっていこう。

今日は定番の Hello, world プログラムを作った。

Go のプログラムはパッケージから構成される。package 文で宣言する。ここでは main という名前でパッケージを作っている。
Go のプログラムは main パッケージの main 関数がエントリポイントになる。だからプログラムのパッケージ名は main で、main という名前の関数がなければいけない。
関数の定義は func 関数名 で行う。上の例では main 関数だけがある。
import 文は、ライブラリの読み込み。ライブラリ(パッケージ)名をクォートでくくって指定する。ここでは出力のために fmt パッケージを読み込んでいる。
そして、fmt.Println 関数が標準出力への出力。引数の文字列に改行をつけて出力する。

じゃあ、実行してみよう。

^o^ > go run hello.go
Hello, world!

今日はここまで。