y0u_bat

[Go언어] 6. 포인터 본문

프로그래밍/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


'프로그래밍 > Go언어' 카테고리의 다른 글

[Go언어] 8. 인터페이스  (0) 2016.01.10
[Go언어] 7. 구조체  (0) 2016.01.08
[Go언어] 5. 클로저,지연호출,패닉과 복구  (0) 2016.01.08
[Go언어] 4. 함수  (0) 2016.01.08
[Go언어] 3. map, 부분 슬라이스  (0) 2016.01.07
Comments