c언어 독학 포인터 변수
■ c언어에서 포인터 변수도 어떤 값을 저장하기 위한 변수의 한 종류인데 여기에는 다른 변수의 메모리 주소값이 저장됩니다. 일단 이렇게 개념을 잡고 예제에서 int형 변수를 하나 선언하고 초기화 한 후 그 값이 저장된 메모리의 주소값을 불러와서 포인터 변수에 저장하고 출력하는 과정을 통해서 포인터 변수를 알아보겠습니다.
▲ int x를 선언하고 10으로 초기화하고 있고, [int * a=&x;]로 int형 포인터 변수 a를 선언하고 그 값을 x의 주소값을 불러와서 초기화하고 있는데요. 포인터를 선언하는 방법은 그림과 같이 [자료형 * 포인터 이름] 형식입니다. 그리고 거기에 저장될 주소값을 불러올 때는 "&'연산자를 사용합니다. 이렇게 선언하고 초기화한 a에 저장된 메모리 주소값을 출력하기 위한 서식 문자 "%p"를 이용하고 있고, a에 저장된 값에 접근하기 위해서 "*" 연산자를 사용하고 있는데요. (이번 글에서는 포인터의 개념을 잡기 위해서 전체적으로 정리하는 것이고 앞으로 자세한 내용을 하나씩 정리할 것입니다.)
프로그램을 실행해서 그 값들을 확인해보겠습니다.
▲ 서식 문자 "%p"를 이용해서 출력한 x의 메모리상의 주소값을 확인할 수 있고, 그곳에 저장된 x의 값 10도 확인할 수 있습니다. 이처럼 포인터를 이용하면 메모리에 직접 접근해서 그곳의 주소와 저장되어 있는 값을 알아낼 수 있습니다.
이렇게 해서 c언어 포인터 변수의 개념을 대충 정리해봤고요. 다음 글부터 하나씩 천천히 정리해나가겠습니다. 수고하셨어요.