02 변수, 상수, 함수!
Go language course for beginners
변수
Go에서의 변수는 기본적으로 Zero Value로 초기화된다.
정수는 0, 실수는 0.0, 문자열은 ""(빈 문자열), 논리는 false, 복소수는 0+0i로 초기화됩니다. interface나 포인터, 슬라이스, 맵, 배열, 함수는 nil이다.
Go에서는 변수는 var 키워드를 사용하여 선언할 수 있다.
var msg string
var 변수이름 타입
을 사용하여 변수를 선언할 수 있다.
이렇게 선언한 변수는 Zero Value로 초기화됩니다.
또한 선언문 뒤에 값을 할당할 수 있다.
var msg string = "Hello, World!"
그리고 :=
연산자를 사용하여 변수를 선언할 수도 있습니다.
msg := "Hello, World!"
다만 이 방법은 최상위 스코프에서는 사용할 수 없습니다. 즉 전역 변수에서는 사용할 수 없습니다.
상수
Go에서의 상수는 const 키워드를 사용하여 선언할 수 있습니다.
const msg string = "Hello, World!"
Go에서의 상수는 컴파일 시점에 결정되므로 선언한 후에 값을 변경할 수 없습니다.
따라서 컴파일 타임에 결정하지 못하는 값은 상수로 사용할 수 없습니다.
함수
Go에서의 함수는 "func" 키워드를 사용하여 선언할 수 있습니다.
// 입력이 없는 함수
func 함수이름0() {
//실행문
}
// 출력이 없는 함수
func 함수이름1(입력변수0 입력타입0) {
//실행문
}
// 하나의 출력을 가지는 함수
func 함수이름2(입력변수0 입력타입0) 출력타입 {
//실행문
}
// 여러 개의 출력을 가지는 함수
func 함수이름3(입력변수0 입력타입0) (출력타입0, 출력타입1) {
//실행문
}
// named return values
func 함수이름4(입력변수0 입력타입0) (출력변수 출력타입) {
//실행문
}
// 가변인자 함수
func 함수이름5(입력변수0 ...입력타입0) {
//실행문
}
What's next?
다음 포스트에서는 if문과 switch문을 살펴보겠습니다.