프로그래밍/Go언어
[Go언어] 6. 포인터
유뱃
2016. 1. 8. 18:23
포인터
Go언어에서도 포인터를 지원합니다.
포인터 연산은 허용하지 않고 메모리주소를 직접 대입을 할 수 없음
var p *int
fmt.Println(p)
결과: nil // nil은 null과 같은 뜻 입니다.
빈포인터형 변수는 바로 사용 할수없으니 new함수로 메모리를 할당해야된다.
var p *int = new(int)
fmt.Println(p)
결과: 0x~~~~~~~ //메모리주소
var n int =1
var p *int = &n
fmt.Println(*p)
결과: 1
func test(n *int) {
*n =2
}
func main() {
n := 1
test(&n)
fmt.Println(n)
}
결과: 2