[go語言]變數宣告-短變數宣告
短變數宣告
在函式中,可以使用短變數宣告的方式進行變數的宣告和初始化,變數名:= 表示式
。
package main
import (
"fmt"
"math"
)
// hi := "hello" // 非法,短變數宣告方式只能用於函式內部
func main() {
min, max := 1, 1000
a, b, c := 1, true, "message"
d := math.Pow10(2)
fmt.Println(min, max, a, b, c, d) // 1 1000 1 true message 100
}
短變數宣告方式確實簡單靈活,但是使用的時候也是需要注意一些地方的。
- 短變數宣告方式只能用於函式內部區域性變數,不能在包級別中使用。
package main
import (
"fmt"
)
// hi := "hello" // 非法,短變數宣告方式只能用於函式內部
func main() {
hi := "hello"
fmt.Println(hi) // hello
}
- 短變數宣告語句中至少要宣告一個新的變數。
package main
import (
"log"
"os"
)
func main() {
file, err := os.Open("file.go")
if err != nil {
log.Fatal(err)
}
file, err := os.Create("new.go") // 編譯失敗,no new variables on left side of :=
if err != nil {
log.Fatal(err)
}
out, err := os.Create("output.go") // 正確,聲明瞭一個新的變數 out, err 這裡執行的是賦值而不是一個新的變數
if err != nil {
log.Fatal(err)
}
}
- 在不同的作用域(
if
for
,switch
),短變數宣告語句會重新宣告新的變數。
package main
import (
"fmt"
"os"
)
func main() {
file, err := os.Open("file.go")
if err != nil {
file, err := os.Open("file2.go") // file 和 err 在 if 作用域中,是重新宣告的兩個變數
fmt.Println(&file, &err) // 通過兩次輸出的 file 和 err 的地址不同可以確認
}
fmt.Println(&file, &err)
}
參考資源:
相關推薦
[go語言]變數宣告-短變數宣告
短變數宣告 在函式中,可以使用短變數宣告的方式進行變數的宣告和初始化,變數名:= 表示式。 package main import ( "fmt" "math" ) // hi :=
快學 Go 語言第 2 課 —— 變數什麼的最討厭了
任何一門語言裡面最基礎的莫過於變量了。如果把記憶體比喻成一格一格整齊排列的儲物箱,那麼變數就是每個儲物箱的標識,我們通過變數來訪問計算機記憶體。沒有變數的程式對於人類來說是可怕的,需要我們用數字位置來定位記憶體的格子,人類極不擅長這樣的事。這就好比一歲半左右的幼兒還沒有學會很多名詞,只能用手來對物
Go 語言執行時環境變數快速導覽
原文: http://dave.cheney.net/2015/11/29/a-whirlwind-tour-of-gos-runtime-environment-variables Go 語言執行時環境變數快速導覽 Go Runtime除了提供:GC, goroutine排程, 定時器,
go語言基礎之匿名變數和多重賦
1、匿名變數 package main //必須有一個main包 import "fmt" func test() (a, b, c int) { return 1, 2, 3 } func main() { var c, d, e int c, d, e = test
GO語言linux下環境變數
vim /etc/profile 最後一行插入export GOROOT=/usr/local/go export GOPATH=~/golib:~/goprojectexport GOBIN=~/gobinexport PATH=$PATH:$GOROOT/bin:$G
Go語言4-基本語法-變數
變數名 命名規則 a.變數名由一個或多個字母、數字、下劃線組成的序列; b.第一個字元必須是字母或下劃線,不能是數字; c.區分大小寫:myVar 和myvar 是不同的變數名。 命名風格
Linux 安裝go語言及配製環境變數
1、安裝包下載地址:http://www.golangtc.com/download 2、下載成功後 將下載的原始碼包解壓至 /usr/local目錄。 tar -C /usr/local
易學筆記-go語言-第4章:基本結構和基本資料型別/4.4 變數/4.4.2 宣告和賦值語句結合
宣告和賦值語句結合 格式:var identifier [type] = value 這裡的type是可選的,具體的型別參照: 第4章:基本結構和基本資料型別/4.2 Go 程式的基本結構和要素/4.2.8 型別 顯式型別舉例: //整型 var a&nbs
GO語言學習:變數的宣告和賦值
在此處學習幾種典型的做法 1.和其他語言一樣的定義方法 var name string //go定義一個字串 name="jxd"; //賦值 2.型別推斷 var name="jxd"  
go語言漸入佳境[3]-變數宣告與賦值
變數 變數是記憶體當中一段空間的抽象描述。變數的型別明確了空間的大小以及空間如何解析。 Go中的變數型別 1 bool byte complex64 complex128 error float32 float64 int int8 int16 int32 int64
[go語言]變數宣告-初始化
初始化 在變數宣告的時候還可以包含初始值,每個變數對應一個,var 變數名 變數型別 = 表示式。 var a int = 1 var a, b string = "hello", "world" 如
C語言 - while迴圈體內變數重新宣告,陷入死迴圈。
今天寫一個實驗程式碼時,用到了while(exp)迴圈。發現exp已經為false。但是依然死迴圈下去。 float T = (float)work[srcNode] / (workAll/6); int consume = 0; float flag = 1.5; while( T &g
C語言中變數和函式的宣告與定義
一、變數在將變數前,先解釋一下宣告和定義這兩個概念。宣告一個變數意味著向編譯器描述變數的型別,但並不為變數分配儲存空間。定義一個變數意味著在宣告變數的同時還要為變數分配儲存空間。在定義一個變數的同時還可以對變數進行初始化。 區域性變數通常只定義不宣告,而全域性變數多在原始檔中定義,在標頭檔案中宣告。 區域性變
C語言變數宣告問題——變數定義一定要放在所有執行語句/語句塊的最前面嗎?
參考網址:http://www.cnblogs.com/web-HCJ/p/4468689.html 報錯資訊:error C2065: 'salary' : undeclared identifier 1 2 3 4 5 6 7 8 9
typeSript(2)-變數,方法的宣告
變數的宣告 1.有哪些變數: Undefined : Number:浮點型別; string : 字串型別; Boolean: 布林型別; enum:列舉型別; any : 任意型別; void:空型別; Array : 陣列型別; Tuple : 元祖型別; Null :空型別。
《21天學通C#》變數使用前需要宣告和賦值,賦值後可以重新賦新的值
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks; namespace 變數宣告賦值使用{ class Program { static
三:go語言變數,常量,列舉,布林
1:一個包下面可以有多個人原始檔 2:import按照書序匯入載入(優先執行檔案裡的init方法) 3:類型別名不能參加正常運算(要同一個型別的前提下才行) 4:申明的變數沒有使用,也會報錯 5:定義包名 -> 最好資料夾唯獨定義包名 6:var a,b,c = 11,21,31
00012java變數的本質_宣告格式和初始化問題
變數的本質就是代表一個“可操作的儲存空間”,空間位置是確定的,但是裡面入置什麼值不確認。 我們可以通過變數名來訪問“對應的儲存空間”,從面操作這個“儲存空間”儲存的值。 java是一種強型別語言,每一個變數都必宣告它的資料型別,變數的資料型別決定了變數佔據的儲存空間大小,比如int
子函式改全域性變數前要先宣告(一般不這樣用)
school = "Oldboy edu."def change_name(name): global school #改全域性變數前要先宣告 print('before change',name,school) school = "YunNan University" na
Go語言學習筆記(二) 基本語法、變數、常量、型別
基本語法 Go語言中的標記 Go程式是由各種標記組成的,標記可以是關鍵字,識別符號,常量,字串文字或符號。例如,以下Go語句由六個標記組成: fmt.Println("Hello, World!") 每個標記單獨表示為: fmt . Println ( "Hello, World