목록배열과포인터 (2)
여행을 개발하다
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/VFlut/btqvbJaL6yq/JnR0NuzvVwbRtVobyKDn21/img.png)
안녕하세요! 오늘은 지난 시간에 이어 '2차원 배열의 동적할당'에 대해 알아보겠습니다. 동적 할당이므로 역시 '포인터(pointer)'도 자연스럽게 등장합니다. 1. 2차원 동적 배열의 선언 1차원 배열을 동적으로 할당할 땐, 가로축, 즉 단 하나의 메모리의 시작 위치만 정해주면 되었었죠? 하지만 2차원 배열은 세로축, 배열 안에 있는 다른 배열도 신경써야 하는 번거로움이 생겨버렸어요. 그래서 포인터도 2개가 필요해졌네요. 하나는 큰 범위에 있는 배열의 시작 메모리 위치를 기억할 포인터 하나, 하나는 인수로 갖고 있는 배열들의 시작 메모리 위치를 기억할 포인터 하나. 이 때 등장하는 개념이 '이중 포인터'입니다. 이중 포인터는 '포인터의 포인터'라고 생각하시면 됩니다. 포인터 변수가 '변수가 저장된 메모..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/kMcRi/btqu890NDEQ/likoUCknZdFMZB8xdFij40/img.png)
안녕하세요~ 드디어 C계열 언어의 지옥이라고 불리는 '포인터(Pointer)'에 대해 이야기 할 시간이 되었습니다. 많은 분들이 '멘붕'에 빠졌다고 말씀하셔서, 저 또한 많이 긴장하고 들었습니다.... 하지만 어차피 부딪힐 난관! 초반에 개념만 잘 이해하고 나간다면, 극복 가능한 페이지라고 생각합니다. 그럼 지금부터 포인터(pointer)의 세계로 들어갑니다! 1. 포인터란? - 값(상수)을 기억하지 않고 변수나 배열이 생성된 메모리의 주소를 기억하는 변수 변수를 선언할 때는 초기값을 반드시 지정해줘야 한다는 것. 다들 기억하시죠? 이와 동시 컴퓨터 내에서는 새로운 메모리가 형성이 되고, 변수는 이 메모리에 저장되는데요. 이 메모리의 주소를 알려주는 것이 바로 포인터의 기본이자 핵심 개념이라고 보시면 됩..