포인터변수 2

[C언어]33. 예제를 통해 포인터에 능숙해지자.

안녕하십니까. 리습입니다. 계속해서 포인터를 공부하고 있습니다. 포인터는 '주소값'을 저장하는 변수공간이며, 공간의 크기는 모두 같으나 타입별로 '참조'하는 크기가 다르다 라고 말씀드렸습니다. 그럼 이런 포인터의 특징을 한번 직접 확인해보도록 하겠습니다. 4byte 의 변수공간을 만든후 이것을 포인터로 쪼개고 쪼갠 부분들을 재조립하는 코드를 만들어 보겠습니다. 실제로 통신에서 사용되는 방식입니다. 코드 #include int main( void ){ int box = 333333333; char *p1 , *p2; int emp_box = 0; p1 = (char *)&box; // box의 주소를 p1에 대입, 단 타입이 다르므로 캐스트연산 p2 = (char *)&emp_box; // emp_box의..

[C언어]32. 메모리를 직접 관리하는, 포인터에 대하여 알아보자 ( 이중포인터 )

안녕하십니까. 리습입니다. 포인터 중에서도 특이한 포인터가 있습니다. 바로 '포인터 주소를 저장하는 포인터' 입니다. 포인터가 '주소값'을 저장하기 때문에 생기는 특이한 포인터죠. 아직 포인터의 응용을 배우진 않았기 때문에 왜 존재하는지 의문이긴 하시겠지만, 우선은 이런것이 있다. 정도로 이해해주시기 바랍니다. 포인터의 주소를 저장하는 포인터 포인터라는 것도 특정 값을 저장하는 변수이기 때문에 메모리 공간을 점유하고 있습니다. 또한 메모리상의 '주소값'을 가지고 있죠. 그런데 포인터는 '참조(접근)' 할 수 있는 기능이 있기 때문에 포인터의 메모리 주소를 일반 포인터로 저장한다면 '참조'할때 문제가 생기죠. 쉽게 그림으로 보도록 하겠습니다. int 포인터를 통해서 int 변수를 가리키는 상황입니다. 이 ..