이것이 C언어다(서현우) 9단원 요약
- 최초 등록일
- 2020.11.09
- 최종 저작일
- 2020.03
- 7페이지/ MS 워드
- 가격 2,000원
소개글
"이것이 C언어다(서현우) 9단원 요약"에 대한 내용입니다.
목차
9장. 포인터
9.1. 포인터의 기본개념
9.2. 포인터에 관한 궁금한 이야기
본문내용
9.1. 포인터의 기본개념
- 포인터는 변수의 메모리 주소를 저장하는 변수
- 변수: 메모리 상의 저장 공간 ➜ 그 위치를 알면 사용할 수 있음
- 위치값 = 주소
- 주소를 사용하기 위해 익혀야 할 기능
: 주소를 구하는 ‘주소 연산자’ + 주소를 담는 ‘포인터’ + 포인터로 변수를 사용할 때 필요한 ‘간접참조 연산자’
주소 연산자
int a;
&a;
변수 앞에 붙여 사용하며, 변수가 할당된 메모리의 시작 주소값을 구한다.
포인터
char *pc;
int *pi;
double *pd;
시작 주소값을 저장하는 변수며, 가리키는 자료형을 표시하여 선언한다.
간접참조 연산자
*pi = 10;
포인터에 사용하며, 포인터가 가리키는 변수를 사용한다
9.1.1. 주소 연산자(&)
- 프로그램이 사용하는 메모리에는 바이트별로 주소값이 있음
(이 값은 0부터 시작하고 바이트 단위로 1씩 증가하므로 2바이트 이상의 크기를 갖는 변수는 여러 개의 주소값에 걸쳐 할당됨)
- 변수명으로 메모리 공간이나 값을 간단히 사용할 수 있음
- 이제 이름이 아닌 주소로 변수를 사용하는 사용하는 방법을 살펴보자
- 주소는 변수가 할당된 메모리 공간의 시작 주소를 사용함
- 주소를 알면 그 위치부터 변수의 크기만큼 메모리를 사용할 수 있음
- 주소는 연산을 통해 직접 구해야 함 ➜ 이때 주소 연산자 사용
- 변수 선언문이 실행되면 각 자료형의 크기만큼 메모리에 저장 공간이 할당 됨. 만약 변수가 메모리 어디에 할당되었는지 궁금하다면 주소 연산자 &를 사용하면 됨
- 주소 연산자: 변수에 사용하여 시작주소를 구함
- 주소 연산자는 단항 연산자며 변수만을 피연산자로 사용함
- 주소 연산자로 변수가 할당된 메모리의 시작 주소를 알면 변수의 크기를 더하여 메모리의 어디서부터 어디까지 할당되었는지 확인할 수 있음
- 변수의 크기나 메모리에 할당되는 방식은 컴파일러와 운영체제에 따라 다를 수 있음
- 주소는 0부터 시작하는 양수이므로 출력할 때 %u 변환문자를 사용하는 것이 좋음
참고 자료
없음