먼저 변수라는 것을 설명해야 이번 포인터라는 것을 설명이 쉽게 가능하기 때문에 일단 변수를 다시 정의하도록 하겠습니다.

변수라는 것을 선언하면 컴퓨터는 정보를 저장할 공간을 마련합니다.

그 공간이라는 녀석은 메모리라고 불립니다.

그 메모리라는 녀석에게 이름을 붙여서 이 int형 변수는 어디에 할당이 되었는지 알려주는 것을 포인터라고 하는 것 입니다.

그러면 이해하기 편하게 설명을 추가적으로 하자면 도로명주소와 비슷하게 바둑판식 느낌의 공간에게 주소를 붙여서 찾기 쉽게 만드는 것입니다.

그러면 포인터에 관하여 간단하게 접해보는 것으로 하겠다.

1
2
3
4
5
6
7
8
int main() {
  int nm = 8;
  int * pnm;
  pnm = &nm;
  printf("%d"&nm);
  printf("%p"&pnm);
  return 0;
}
cs

이 코드로 하는 것입니다.

그러면 다시 분석을 하는 시간으로 돌아가보도록 하겠습니다.

간단하게 설명을 하자면 int nm 이것은 아실 겁니다.

하지만, int * pnm; 이것은 무엇인가 하실 것 같은데 이거는 pnm이라는 포인터 변수를 선언하는 것으로 그냥 선언문 입니다.

그리고 pnm = &nm; 이것은 선언된 포인터 변수에 nm의 포인터 값을 저장하는 것입니다.

또 %p라는 것은 %d와 비슷한 서식 문자로 나중에 다시 거론을 하도록 하겠습니다.

그냥 포인터라는 것은 변수의 주소와 비슷하다라고 생각을 하면 이해하기가 편하리라고 생각을 합니다.

저 코드로 출력이 되는 값은 직접 확인해 보는 것을 저는 추천합니다.

그럼 저는 다음 강좌시간에 찾아 뵙도록 하겠습니다.

감사합니다!!!! ^^

블로그 이미지

이사가는 사람

안녕하세요 블로그를 옮기려고 생각하고 있습니다. 해당 블로그는 폐기하고 다음 다른 블로그에서 뵙도록 하겠습니다. 감사합니다!

,