본문 바로가기

프로그래밍언어

[혼공] 혼공8기 C언어 6주차 기본미션

쿼리큘럼

Chapter 09 포인터의 핵심 내용을 정리하고 공유하기

○ 메모리의 주소

- 주소(address)는 변수가 할당된 메모리의 시작 주소

- 변수의 공간(I-value)이나 값(r-value)은 이름으로 사용함

- 주소를 알면 주소로도 변수의 공간이나 값을 사용할 수 있음

○ 주소 연산자

실행결과

○ 포인터와 간접 참조 연산자

실행결과

○ 여러 가지 포인터 사용해보기

실행결과

○ const를 사용한 포인터

실행결과

포인터는 메모리를 사용하는 또 다른 방법

주소 연산자 &로 변수가 할당된 메모리의 위치를 확인함

포인터로 가리키는 변수를 사용할 때 간접 참조 연산자 *를 씀

구분 사용 예 기능
주소 연산자 int a;
&a;
변수 앞에 붙여 사용하며, 변수가 할당된 메모리의 시작 주소 값을 구함
포인터 char *pc;
int *pi;
double *pd;
시작 주소 값을 저장하는 변수며, 가리키는 자료형을 표시하여 선언함
간접 참조 연산자 *pi = 10; 포인터에 사용하며, 가리키는 변수를 사용함

○ 주소와 포인터의 차이

- 주소는 상수고 포인터는 변수라서 포인터의 값은 바뀔 수 있음

- 두 개 이상의 포인터가 하나의 변수를 가리킬 수 있음

○ 주소와 포인터의 크기

실행결과

○ 포인터의 대입 규칙

실행결과

○ 포인터를 사용하는 이유

실행결과

○ 포인터 없이 두 변수의 값을 바꾸는 함수

실행결과