강좌 & 팁
글 수 2,412
2012.03.11 20:47:42 (*.172.215.154)
46946
포인터 변수로 다른 변수의 값 바꾸기
포인터 변수의 앞에 붙는 '*'문자는 포인터 변수가 가리키는 메모리에 들어있는 값을 말한다.
포인터 변수는 주소값을 가지고 있으므로 *포인터 변수는 그 주소의 값이 된다.
다음의 예제로 포인터 변수를 이용하여 다른 변수의 값을 변경하는 사용법을 보자
#include <stdio.h>
int main()
{
int num = 3;, *pnum = #
*pnum = 9;
printf("Adress of num : %p\n",&num);
printf("value of num : %d\n", num);
printf("value of pnum : %p\n", pnum);
printf("value of *pnum : %d\n", *pnum);
return 0;
}
<실행 결과>
*pnum = 9;
여기서 *pnum 은 변수 pnum 이 가리키는 메모리의 내용을 말하므로, 변수 num의 값이 된다.
따라서 변수 num의 값을 9로 바꾸는 것이 된다.