見出し画像

変数(Go言語)

こんにちは!AKIです.

本日から,Goの文法編をスタートしていきます.

実は,一つの記事で「変数・関数・パッケージ」の三つを一気に説明しようと思ったのですが,長文を読むのは疲れるので,小分けで説明していきます!まずは,変数から....

それでは~Go!

変数って何?

変数は,プログラムの基本的な概念ですので,必ずマスターしましょう!
まぁ,簡単に言うと,
 変数はデータを入れる箱です!(←ざっくりw)

プログラムは,データに対して,様々な処理を実行するのですが,その際に,
 データを入れる箱
が必要になるのです.

データを入れる箱を用意することを,プログラムの世界では
 変数を宣言する
と言います.(これから,箱を使うよん!ってPCに命令するのです.)

以上が,変数の説明です.
それでは,Goではどのように変数を宣言するのか見ていきましょう!

説明用ソースコードの全文

とりあえず,説明するためのソースコードの全文は次の通りです.

package main //このファイルは「main」パッケージですよ!と宣言

import (
	"fmt" //標準入出力関数の標準パッケージ
)

/*
	varによる変数宣言
*/
var a bool = false //bool型の変数aを宣言

func main() {
	fmt.Println("a = ", a)
	/*
		varによる変数宣言(複数)
	*/
	var i, j int = 1, 2 // 変数の宣言と初期化
	fmt.Println("i,j = ", i, ",", j)

	/*
		:=による変数宣言
		(注1)関数の外では使えません!(関数内だけ!)
	*/
	k, l, m := 10, 20, "hello" // 変数の宣言(省略型)
	fmt.Println("k,l,m = ", k, ",", l, ",", m)

	/*
		定数の宣言
	*/
	const pi float32 = 3.14 // 定数の宣言
	fmt.Println("pi = ", pi)
	//pi = 3.1415			// 定数は値を変更できない

	/*
		変数の基本型	(全部じゃないけどね...ごめん...)
	*/
	var (
		vBool    bool      = true
		vString  string    = "Hello"
		vInt     int       = -1
		vUint    uint      = 1
		vFloat32 float32   = 1.0e+10
		vFloat64 float64   = 1.0e+100
		vComplex complex64 = 1 + 10i
	)
	fmt.Println("vBool    = ", vBool)
	fmt.Println("vString  = ", vString)
	fmt.Println("vInt     = ", vInt)
	fmt.Println("vUint    = ", vUint)
	fmt.Println("vFloat32 = ", vFloat32)
	fmt.Println("vFloat64 = ", vFloat64)
	fmt.Println("vComplex = ", vComplex)
}

varによる変数宣言

package main //このファイルは「main」パッケージですよ!と宣言


まずば,「package main」これは,このファイルは「main」というパッケージに属していますよーと宣言します.Goで書かれたすべてのファイルは何らかのパッケージに属する必要があります!

import (
	"fmt" //標準入出力関数の標準パッケージ
)

import("fmt")は,fmtというGo言語標準のパッケージを使いますっていう宣言です.fmtパッケージは「formatted I/O」の略で,主に,コンソールからの入力や,コンソールへの出力を実行する関数が含まれます.

/*
	varによる変数宣言
*/
var a bool = false //bool型の変数aを宣言

func main() {
	fmt.Println("a = ", a)

変数を宣言するためには「var」を使います.

次に来る「a」が変数名となります.

その次の「bool」が変数の型となります.bool型で宣言された変数は「true」と「false」の二つの値を格納することができます.

うーん,型が後ろに来るなんて,Go独特の書き方ですね~!

そして,「= false」で変数aにfalseを格納しています.このように,宣言時にデータを格納することを「変数を初期化する」と言います.

varによる変数宣言(複数)

	/*
		varによる変数宣言(複数)
	*/
	var i, j int = 1, 2 // 変数の宣言と初期化
	fmt.Println("i,j = ", i, ",", j)

上記のように,複数の変数を宣言し,初期化できます.

:=による変数宣言

	/*
		:=による変数宣言
		(注1)関数の外では使えません!(関数内だけ!)
	*/
	k, l, m := 10, 20, "hello" // 変数の宣言(省略型)
	fmt.Println("k,l,m = ", k, ",", l, ",", m)

上の宣言を見てください.なんと,varがないですねぇ~!

varを省略する代わりに,「:=」を使うことで,変数の型まで省略することができます!(型は右辺の値から決まります.)

なお,「:=による変数宣言」は関数内だけで使用可能なので,要注意です!

定数の宣言

	/*
		定数の宣言
	*/
	const pi float32 = 3.14 // 定数の宣言
	fmt.Println("pi = ", pi)
	//pi = 3.1415			// 定数は値を変更できない

定数は,変数と異なり,宣言時に初期化した値を途中で変更することはできません!

定数の宣言には,「const」を使います.あとは,変数と同じです!

変数の基本型

	/*
		変数の基本型	(全部じゃないけどね...ごめん...)
	*/
	var (
		vBool    bool      = true
		vString  string    = "Hello"
		vInt     int       = -1
		vUint    uint      = 1
		vFloat32 float32   = 1.0e+10
		vFloat64 float64   = 1.0e+100
		vComplex complex64 = 1 + 10i
	)

主な変数の基本型は上記の通りです.
なんと,基本型に複素数もあるんですねぇ~.

そして,varのあとに括弧()を使うことで,複数の変数を宣言できるのです!

各型の詳細な説明は,基本的な内容ですので,他のサイトを参照してください.(←面倒くさくなったw)
わからない場合は,コメントしてください(^^)/

最後に

どうでしたか?(←私は執筆しながら,眠たくなりました...w)
なんとなく,Goの変数の雰囲気を掴めたでしょうか?

プログラミングの文法の学習は,地味でつまらないですが,これが分からないと,次に進めないですからね~!仕方なし!

まぁ,プログラムは一つの言語をマスターすれば,二つ目以降の言語習得は結構,簡単なので,初学者の方には粘り強く頑張ってほしいです(*´ω`*)

それでは,次回で会いましょう('ω')ノ

ここから先は

0字
500円で,本マガジンのすべてを読むことができます.プログラム初心者でもGO言語を習得できるように丁寧な説明を心がけています.もちろん,購読できない方にも,Goの魅力を伝えていきます!

基本的にGoの公式サイトをわかり易く解説していきます.本マガジンは500円です.購入すれば,本マガジン内の全記事がストレスなく読めます!

サポートお願いいたします.主に初心者から中級向けに,ソフトウェア開発に関する知識を提供していきます.