var 變數名 變數型別
var (
a int
b string
c float32
d func() bool
e struct
)
var a int
var b string
var c float32
var d func() bool
var e struct
整型和浮點型變數的預設值為 0。
字串變數的預設值為空字串。
布林型變數預設為 bool。
切片、函式、指標變數的預設為 nil。
var 變數名 型別 = 表示式
var hp int = 100
上面**中,100 和 int 同為 int 型別,int 可以認為是冗餘資訊,因此可以進一步簡化初始化的寫法。
在標準格式的基礎上,將 int 省略後,編譯器會嘗試根據等號右邊的表示式推導 hp 變數的型別。
var hp = 100
var defence = 20
var damagerate float32 = 0.17
var damage = float32(attack-defence) * damagerate
fmt.println(damage)
var 的變數宣告還有一種更為精簡的寫法,例如:
hp := 100
注意:由於使用了:=,而不是賦值的=,因此推導宣告寫法的左值變數必須是沒有定義過的變數。若定義過,將會發生編譯錯誤。
var b int = 200
b, a = a, b
fmt.println(a, b)```
### go語言匿名變數
在使用多重賦值時,如果不需要在左值中接收變數,可以使用匿名變數
```func getdata() (int, int)
a, _ := getdata()
_, b := getdata()
fmt.println(a, b)```
**執行結果:
100 200
**注意:**匿名變數不占用命名空間,不會分配記憶體。匿名變數與匿名變數之間也不會因為多次宣告而無法使用。
Go語言變數宣告
匿名變數 複數型別 bool型別 字元型別 資料型別轉換 指標型別 常量iota常量生成器 字串與數值型別的轉換 var name type type是型別 bool string int int8 int16 int32 int64 uint uint8 uint16 uint32 uint64 ...
1 Go變數宣告 賦值和常量
先簡單了解一下控制台輸出,在go中,我們使用fmt包中的函式進行在控制台中列印,一般用以下幾個函式 fmt.print 不換行輸出 fmt.printf 字串格式化輸出 同c語言 fmt.println 帶換行輸出 fmt.fprintf fmt.fprint fmt.fprintln 指定輸出流 ...
Go語言示例 3變數宣告
variables.go源 定義字串型別自變數。package main import fmt func main 解釋執行。go run variables.go initial variables.go源 定義整數型自變數。package main import fmt func main 解釋...