예전에 우리나라에 8bit 컴퓨터가 나올시절 "저 요즘 컴퓨터 배워요" 하면 거의 BASIC을 배우러 다니는것 이었습니다.
요즘은  컴퓨터를 배우러 다닌다고 하면 너무 많은 분야가 있기에 잘 알수 없습니다.
하지만 만약 컴퓨터프로그래밍을 배운다고 하면 거의 90%이상이 C를 배웁니다.
물론 처음 시작하는 분의 경우 입니다. 다른 것을 배우러 갔지만 C는 과정으로 배우는 경우도 많습니다.

그런데 C를 배울때 다른것은 아 그렇구나 하며 잘 넘어가도 이놈의 포인터(pointer)만 나오면 햇갈리기 시작합니다.
그래서 저는 * 표는 "~의 값" 이렇게 일단 외웠습니다. * 표가 붙으면 무조건 값이니까요.
이것만 가지고도 보통 50%정도는 해결됩니다. 그럼 반정도는 모르는거죠.

문제는 너무나 당연한 곳에서 생깁니다. * 표를 아무곳에나 붙이면 안되는 것입니다.
"~의 값"에서 "~"에 들어갈수 있는것은 꼭 주소(address)란 것을 빼먹고 외운것 입니다

처음 포인터를 배우고 포인터니까 * 표를 붙여야 하는데 어떨땐 에러나고 어떨땐 잘넘어가고
이곳 저곳 * 표를 붙여 에러가 안나면 실행하고 답이 틀리면 다르게 해보고 맞으면 끝.
이렇게만 하다보면 이상하게 주소라는 것을 잊어 버리더라고요. 그래서 이젠 이렇게 외워야 합니다.

                     * 주소 는 주소의 값

C 프로그램의 마인드 맵을  인터넷에서 찾아보니 아주 간단하게 나오더군요.
그래서 제가 포인터 부분만 잘라 다시 정리 했습니다. 출처는 freemind겔러리 입니다.


마인드 맵을 보니 공부할 내용이 몇가지 안됩니다. 이미 알고있는 내용과 모르는 내용이 같이 있을 것입니다.
모르는 내용만 다시한번 점검하시면 될듯합니다.

저도 포인터에 대해 첨부터 점검을 다시 해볼 생각입니다. 정리가 잘되면 정리된 부문을 포스팅 하겠습니다.
제가 원래 만족을 잘 못해서 정리가 안될지도 모릅니다. 그래도 계속 노력해야죠.


top
,