Go函式與變數

2021-10-10 21:50:40 字數 1444 閱讀 3499

package main

import

"fmt"

var a =

100func

main()

package main

import

"fmt"

var a =

100func

main()

package main

import

"fmt"

var a =

100funcf1(

)func

main()

package main

import

"fmt"

var a =

100funcf1(

)func

main()

}

函式會先在函式體內找變數

函式體內沒有,會去找全域性變數

被呼叫的函式,無法找到呼叫者函式體內定義的變數

package main

import

"fmt"

var a =

100func

f1(x int

)func

main()

package main

import

"fmt"

var a =

100func

f1(x int

)func

main()

package main

import

"fmt"

var a =

100func

f1(x int

)func

main()

}

1.1被呼叫的函式會先從呼叫者函式內找引數

1.2如果呼叫者函式內沒有找到,會去全域性變數裡找

1.3如果被呼叫的函式在塊內,會先從塊級變數找起然後向外找變數

package main

import

"fmt"

//全域性變數, 如果首字母大寫就是包級全域性變數

var a =

100//全域性變數

func

f1(x int

)func

main()

//b變數已經銷毀,無法使用

fmt.

println

(b)//報錯undefined: b

}

go中變數的作用域(作用範圍有三種)

全域性變數

函式級變數

塊級變數

作用範圍依次減小。

go常量與變數

常量使用關鍵字const,常量的資料型別只能是數字型 整數,浮點和複數 字串型和布林型。格式 const name type value 比如 const a 1 複製 在go語言中,可以省略型別,因為編譯器可以根據常量的值來推斷型別。常量在賦值時,可以使用運算子,比如 const b 1 2 複製...

Go 型別與變數

go 語言中的型別與其他語言類似,比較特殊的有以下幾個 bool 型別 它的值只能是 true 與 false。int uint 它們的長度會根據作業系統的不同 32 64 bit 的不同而有所區別。儲存指標的的32 64整形 uintptr 引用型別 slice,map,chan 值型別的預設值為...

go 變數大寫 go語言 變數與常量

變數 一 變數注意事項 變數名首字母大寫,可以被其他包訪問呼叫 公有 變數名首字母小寫,其他包不能訪問和呼叫 私有 在同乙個域裡乙個變數只能定義一次,不可重複定義 二 變數的宣告的種方式 1 先宣告後賦值 關鍵字 變數名 變數型別 var a int 變數名 值 a 10 賦值需要在函式體裡 2 宣...