P rogramming/C Language
싱글 포인터와 더블 포인터의 swap() 함수 구현.
민트앤라떼
2012. 6. 26. 14:39
(1) 싱글 포인터의 swap() 함수
- call by reference 는 참조에 의한 호출로 인자로 전달된 주소가 가리키는 변수의 조작을 함수 내에서 가능하게 한다.
(2) 더블 포인터의 swap() 함수
- 그렇기 때문에 포인터 pA와 pB의 주소값을 넘겨준다.
- pA와 pB는 싱글 포인터이므로, 이들의 주소값은 더블 포인터를 통해서 저장되어야한다. (**a 와 **b)
- swap()함수 내에서는 **a -> *pA -> A 를 가리키게 된다.
- 더블 포인터의 call by reference를 통해 swap()함수 내에서 pA가 가리키는 값과 pB가 가리키는 변수를 변경 가능하다.
(3) 결과