[자료구조-1] 포인터
* 포인터 : 메모리 주소를 값으로 가지는 변수
형식> 타입이름 *변수이름;
. 변수이름 : 선언된 포인터 변수의 이름
. * : 변수 이름이 포인터 변수임을 표시
. 타입이름 : 포인터변수에 저장될 주소에 저장되는 데이터의 유형
ex)
int main(void)
{
int x=1, y=2;
int *ip; // 정수형 포인터변수 ip
ip = &x; // & : 변수의 주소, 즉 x변수의 주소를 ip로 입력
printf("x=%d y=%d ip=%x ", x,y,ip);
y = *ip; // 정수형 포인터변수 ip가 가지고 있는 주소위치의 값(*)을 의미, 여기서 y=x의 의미
*ip = 0; // 정수형 포인터변수 ip가 가지고 있는 주소위치의 값을 0으로. 여기선 결국 x가 0이 되겠지
printf("x=%d y=%d ip=%x ", x, y, ip);
return 0;
}
실행해 보면,
----------------------------------------------------------------------
x=1 y=2 ip=1dfe8c
x=0 y=1 ip=1dfe8c
visual studio에서도 확인해 보면...