이번 포스트에서는 golang에 문법에 대해서 작성할려고 합니다.
package main
import (
fmt
)
func init () {
fmt.Println("초기화")
}
func main () {
fmt.Println("Hello golang")
}
설명
- package main
메인 함수가 구현되어 있는 패키지- fun main ()
메인 함수는 golang에서 프로그램의 진입점 역활을 수행합니다. 또한 메인함수는 package main 함수에 구현되어 있어 서 만약 패캐지를 정의 하지 않으면 빌드 도구들이 실행 파일을 만들지 못합니다.- fun init ()
패키지가 로드될 때 가장 먼저 호출되는 함수입니다. 패키지의 초기화 로직이 필요할 때 사용합니다.
golang에서 변수는 var 키워드를 통해서 선언을 합니다
var a int
var b string
- 제로값
go에서는 선언할 때 초깃값을 지정하지 않으면 제로값으로 초기화됩니다
정수 = 0
실수 = 0.0
문자열 = ""
bool = false
배열 = 변수 타입에 따른 값으로 제로값으로 설정
슬라이스 = nill
포인터 = nil
또한 변수 여러개를 한번에 선언도 가능합니다. 그리고 타입을 생략할 수 도 있습니다. 타입을 생략할 수 있는 이유는
초괴화되 값을 통해서 타입을 추론해서 알아서 타입이 지정되기 때문이죠, 근데 타입을 생략할 때는 꼭 값을 초기화 해줘야합니다.
// 여러개 선언
var (
a int
b float
c string
)
// 타입 추론
var d = 5
그리고 golang으로 개발하면 거의 이 방식으로 타입을 선언하게 됩니다. (:=) 연산자를 이용해서 값을 선언하는 것입니다.
package main
import fmt
func main () {
sum , i := 0, 0; // 이렇게 선언해서 사용하게 됩니다.
for i < 10 {
sum += i
++i
}
fmt.Println(sum)
}
상수는 처음 선언한 이후에 변하지 않는 변수를 상수라고 합니다. go에서 상수를 사용할 때는 const 를 사용해서 선언합니다.
상수는 bool, 숫자, 문자열 타입으로만 선언할 수 있습니다!!
const A unint = 64
const B string = "문자열"
const C bool = true
// 변수처럼 묶어서 사용할 수도 있습니다.
const (
A = 1
B = 2
C = 3
)
const (
Visa = "Visa"
Master = "MasterCard"
Amex = "American Express"
)
열거형은 차례로 1씩 증가하는 상수의 묶음입니다.
const (
Apple = iota // 0
Grape // 1
Orange // 2
)
iota
상수값을 0부터 순차적으로 부여하기 위해 iota 라는 identifier를 사용할 수 있다. 이 경우 iota가 지정된 Apple에는 0이 할당되고, 나머지 상수들을 순서대로 1씩 증가된 값을 부여받는다.
여기까지 간단하게 go변수에 대해 적어봤습니다.
만약 틀린부분이 있으면 언제든지 지적 부탁드립니다.