Go 언어 변수 범위
Go 언어 변수 범위
범위는 소스 코드에서 선언된 식별자가 나타내는 상수, 유형, 변수, 함수 또는 패키지의 범위입니다.
Go 언어에서는 세 위치에서 변수를 선언할 수 있습니다.
함수 내에서 정의된 변수를 지역 변수라고 합니다
함수 외부에 정의된 변수를 전역 변수라고 합니다
함수 정의에 있는 변수를 형식 매개변수라고 합니다
로컬 변수에 대해 자세히 알아보겠습니다. , 전역 변수 및 형식 매개변수. <…
다음 예에서 main() 함수는 지역 변수 a, b, c를 사용합니다.
package main
import "fmt"
func main() {
/* 声明局部变量 */
var a, b, c int
/* 初始化参数 */
a = 10
b = 20
c = a + b
fmt.Printf ("结果: a = %d, b = %d and c = %d\n", a, b, c)
}
위 예의 실행 출력 결과는 다음과 같습니다. 结果: a = 10, b = 20 and c = 30
전역 변수
함수 외부에 선언된 변수를 전역 변수라고 합니다. 전역 변수는 전체 패키지에서 사용할 수 있으며 심지어 외부 패키지에서도 사용할 수 있습니다(내보낸 후).
전역 변수는 모든 함수에서 사용할 수 있습니다. 다음 예에서는 전역 변수를 사용하는 방법을 보여줍니다.
package main
import "fmt"
/* 声明全局变量 */
var g int
func main() {
/* 声明局部变量 */
var a, b int
/* 初始化参数 */
a = 10
b = 20
g = a + b
fmt.Printf("结果: a = %d, b = %d and g = %d\n", a, b, g)
}
위 예 실행의 출력 결과는 다음과 같습니다. 结果: a = 10, b = 20 and g = 30Go 언어 프로그램의 전역 변수와 지역 변수는 같은 이름을 가질 수 있지만 함수 내의 지역 변수가 우선권을 갖습니다. 예는 다음과 같습니다.
package main import "fmt" /* 声明全局变量 */ var g int = 20 func main() { /* 声明局部变量 */ var g int = 10 fmt.Printf ("结果: g = %d\n", g) }위 예의 실행 출력은 다음과 같습니다.
结果: g = 10
형식 매개변수
형식 매개변수는 기능. 예는 다음과 같습니다.
package main import "fmt" /* 声明全局变量 */ var a int = 20; func main() { /* main 函数中声明局部变量 */ var a int = 10 var b int = 20 var c int = 0 fmt.Printf("main()函数中 a = %d\n", a); c = sum( a, b); fmt.Printf("main()函数中 c = %d\n", c); } /* 函数定义-两数相加 */ func sum(a, b int) int { fmt.Printf("sum() 函数中 a = %d\n", a); fmt.Printf("sum() 函数中 b = %d\n", b); return a + b; }
위 예의 실행 출력은 다음과 같습니다.
main()函数中 a = 10
sum() 函数中 a = 10
sum() 函数中 b = 20
main()函数中 c = 30
로컬 및 전역 변수 초기화
다양한 기본값 지역 및 전역 변수 유형은 다음과 같습니다.