go語言變數的宣告與賦值

2021-09-12 10:40:47 字數 1250 閱讀 8589

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 解釋...