개념 공부/Language
[C 개념] #1. 2학기 예습 (포인터, 다중 포인터)
clean01
2020. 8. 3. 22:45
포인터
포인터는 →(화살표)라고 생각하면 된다.
&는 시작 주소값을 불러온다. &x는 x의 시작 주소값.
int x=10;
int *p = &x;
포인터 변수 p는 x를 가리키며, p=(x의 시작 주소값)이다.
p --> x
printf("x의 값: %d, 포인터로 x값에 접근: %d\n", x, *p);
출력결과는 'x의 값: 10, 포인터로 x값에 접근: 10'이다.
즉 x=*p임.
다중 포인터
만약
#include <stdio.h>
int main(void)
{
int x=10;
int *p1 = &x;
int **p2 = &p1;
int ***p3 = &p2;
...(생략)
}
이렇게 선언했다치자.
이를 화살표로 나타내면
p3 --> p2 --> p1 --> x
이렇다.
즉
p1 = &x
p2 = &p1
p3 = &p2